@relayprotocol/relay-kit-ui 9.1.4 → 10.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/_cjs/src/components/common/CustomAddressModal.js +18 -8
  2. package/_cjs/src/components/common/CustomAddressModal.js.map +1 -1
  3. package/_cjs/src/components/common/RefundReason.js +106 -3
  4. package/_cjs/src/components/common/RefundReason.js.map +1 -1
  5. package/_cjs/src/components/common/TransactionModal/DepositAddressModalRenderer.js +7 -10
  6. package/_cjs/src/components/common/TransactionModal/DepositAddressModalRenderer.js.map +1 -1
  7. package/_cjs/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js.map +1 -1
  8. package/_cjs/src/components/common/TransactionModal/steps/ErrorStep.js +2 -2
  9. package/_cjs/src/components/common/TransactionModal/steps/ErrorStep.js.map +1 -1
  10. package/_cjs/src/components/common/TransactionModal/steps/SwapSuccessStep.js +15 -16
  11. package/_cjs/src/components/common/TransactionModal/steps/SwapSuccessStep.js.map +1 -1
  12. package/_cjs/src/components/primitives/ChainIcon.js +2 -1
  13. package/_cjs/src/components/primitives/ChainIcon.js.map +1 -1
  14. package/_cjs/src/components/primitives/ChainTokenIcon.js +6 -2
  15. package/_cjs/src/components/primitives/ChainTokenIcon.js.map +1 -1
  16. package/_cjs/src/components/widgets/OnrampWidget/modals/OnrampModal.js +10 -13
  17. package/_cjs/src/components/widgets/OnrampWidget/modals/OnrampModal.js.map +1 -1
  18. package/_cjs/src/components/widgets/OnrampWidget/widget/index.js +1 -1
  19. package/_cjs/src/components/widgets/OnrampWidget/widget/index.js.map +1 -1
  20. package/_cjs/src/components/widgets/SwapWidget/index.js +4 -4
  21. package/_cjs/src/components/widgets/SwapWidget/index.js.map +1 -1
  22. package/_cjs/src/components/widgets/SwapWidgetRenderer.js +22 -9
  23. package/_cjs/src/components/widgets/SwapWidgetRenderer.js.map +1 -1
  24. package/_cjs/src/components/widgets/WidgetContainer.js +1 -1
  25. package/_cjs/src/components/widgets/WidgetContainer.js.map +1 -1
  26. package/_cjs/src/constants/events.js +2 -1
  27. package/_cjs/src/constants/events.js.map +1 -1
  28. package/_cjs/src/constants/maxGasBuffer.js +1 -2
  29. package/_cjs/src/constants/maxGasBuffer.js.map +1 -1
  30. package/_cjs/src/hooks/index.js +3 -1
  31. package/_cjs/src/hooks/index.js.map +1 -1
  32. package/_cjs/src/hooks/useKnownTokenContract.js +45 -0
  33. package/_cjs/src/hooks/useKnownTokenContract.js.map +1 -0
  34. package/_cjs/src/providers/RelayKitProvider.js +22 -1
  35. package/_cjs/src/providers/RelayKitProvider.js.map +1 -1
  36. package/_cjs/src/types/RelayTransaction.js.map +1 -1
  37. package/_cjs/src/utils/nativeMaxAmount.js +4 -4
  38. package/_cjs/src/utils/nativeMaxAmount.js.map +1 -1
  39. package/_cjs/src/utils/relayTransaction.js +14 -1
  40. package/_cjs/src/utils/relayTransaction.js.map +1 -1
  41. package/_cjs/src/version.js +1 -1
  42. package/_cjs/src/version.js.map +1 -1
  43. package/_cjs/tsconfig.build.tsbuildinfo +1 -1
  44. package/_esm/src/components/common/CustomAddressModal.js +24 -10
  45. package/_esm/src/components/common/CustomAddressModal.js.map +1 -1
  46. package/_esm/src/components/common/RefundReason.js +107 -4
  47. package/_esm/src/components/common/RefundReason.js.map +1 -1
  48. package/_esm/src/components/common/TransactionModal/DepositAddressModalRenderer.js +10 -10
  49. package/_esm/src/components/common/TransactionModal/DepositAddressModalRenderer.js.map +1 -1
  50. package/_esm/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js +1 -1
  51. package/_esm/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.js.map +1 -1
  52. package/_esm/src/components/common/TransactionModal/steps/ErrorStep.js +2 -2
  53. package/_esm/src/components/common/TransactionModal/steps/ErrorStep.js.map +1 -1
  54. package/_esm/src/components/common/TransactionModal/steps/SwapSuccessStep.js +15 -16
  55. package/_esm/src/components/common/TransactionModal/steps/SwapSuccessStep.js.map +1 -1
  56. package/_esm/src/components/primitives/ChainIcon.js +3 -2
  57. package/_esm/src/components/primitives/ChainIcon.js.map +1 -1
  58. package/_esm/src/components/primitives/ChainTokenIcon.js +6 -3
  59. package/_esm/src/components/primitives/ChainTokenIcon.js.map +1 -1
  60. package/_esm/src/components/widgets/OnrampWidget/modals/OnrampModal.js +14 -14
  61. package/_esm/src/components/widgets/OnrampWidget/modals/OnrampModal.js.map +1 -1
  62. package/_esm/src/components/widgets/OnrampWidget/widget/index.js +1 -1
  63. package/_esm/src/components/widgets/OnrampWidget/widget/index.js.map +1 -1
  64. package/_esm/src/components/widgets/SwapWidget/index.js +4 -4
  65. package/_esm/src/components/widgets/SwapWidget/index.js.map +1 -1
  66. package/_esm/src/components/widgets/SwapWidgetRenderer.js +27 -11
  67. package/_esm/src/components/widgets/SwapWidgetRenderer.js.map +1 -1
  68. package/_esm/src/components/widgets/WidgetContainer.js +1 -1
  69. package/_esm/src/components/widgets/WidgetContainer.js.map +1 -1
  70. package/_esm/src/constants/events.js +2 -1
  71. package/_esm/src/constants/events.js.map +1 -1
  72. package/_esm/src/constants/maxGasBuffer.js +0 -1
  73. package/_esm/src/constants/maxGasBuffer.js.map +1 -1
  74. package/_esm/src/hooks/index.js +2 -1
  75. package/_esm/src/hooks/index.js.map +1 -1
  76. package/_esm/src/hooks/useKnownTokenContract.js +52 -0
  77. package/_esm/src/hooks/useKnownTokenContract.js.map +1 -0
  78. package/_esm/src/providers/RelayKitProvider.js +31 -2
  79. package/_esm/src/providers/RelayKitProvider.js.map +1 -1
  80. package/_esm/src/types/RelayTransaction.js.map +1 -1
  81. package/_esm/src/utils/nativeMaxAmount.js +4 -4
  82. package/_esm/src/utils/nativeMaxAmount.js.map +1 -1
  83. package/_esm/src/utils/relayTransaction.js +20 -0
  84. package/_esm/src/utils/relayTransaction.js.map +1 -1
  85. package/_esm/src/version.js +1 -1
  86. package/_esm/src/version.js.map +1 -1
  87. package/_esm/tsconfig.build.tsbuildinfo +1 -1
  88. package/_types/src/components/common/CustomAddressModal.d.ts.map +1 -1
  89. package/_types/src/components/common/RefundReason.d.ts +1 -1
  90. package/_types/src/components/common/RefundReason.d.ts.map +1 -1
  91. package/_types/src/components/common/TransactionModal/DepositAddressModalRenderer.d.ts.map +1 -1
  92. package/_types/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.d.ts +2 -2
  93. package/_types/src/components/common/TransactionModal/steps/DepositAddressValidatingStep.d.ts.map +1 -1
  94. package/_types/src/components/common/TransactionModal/steps/SwapSuccessStep.d.ts.map +1 -1
  95. package/_types/src/components/primitives/ChainIcon.d.ts.map +1 -1
  96. package/_types/src/components/primitives/ChainTokenIcon.d.ts.map +1 -1
  97. package/_types/src/components/widgets/OnrampWidget/modals/OnrampModal.d.ts.map +1 -1
  98. package/_types/src/components/widgets/OnrampWidget/widget/index.d.ts.map +1 -1
  99. package/_types/src/components/widgets/SwapWidget/index.d.ts +0 -2
  100. package/_types/src/components/widgets/SwapWidget/index.d.ts.map +1 -1
  101. package/_types/src/components/widgets/SwapWidgetRenderer.d.ts +0 -2
  102. package/_types/src/components/widgets/SwapWidgetRenderer.d.ts.map +1 -1
  103. package/_types/src/components/widgets/WidgetContainer.d.ts.map +1 -1
  104. package/_types/src/constants/events.d.ts +1 -0
  105. package/_types/src/constants/events.d.ts.map +1 -1
  106. package/_types/src/constants/maxGasBuffer.d.ts +0 -1
  107. package/_types/src/constants/maxGasBuffer.d.ts.map +1 -1
  108. package/_types/src/hooks/index.d.ts +2 -1
  109. package/_types/src/hooks/index.d.ts.map +1 -1
  110. package/_types/src/hooks/useKnownTokenContract.d.ts +35 -0
  111. package/_types/src/hooks/useKnownTokenContract.d.ts.map +1 -0
  112. package/_types/src/providers/RelayKitProvider.d.ts +13 -5
  113. package/_types/src/providers/RelayKitProvider.d.ts.map +1 -1
  114. package/_types/src/types/RelayTransaction.d.ts +1 -1
  115. package/_types/src/utils/nativeMaxAmount.d.ts +2 -2
  116. package/_types/src/utils/nativeMaxAmount.d.ts.map +1 -1
  117. package/_types/src/utils/relayTransaction.d.ts +16 -0
  118. package/_types/src/utils/relayTransaction.d.ts.map +1 -1
  119. package/_types/src/utils/tokens.d.ts +1 -1
  120. package/_types/src/version.d.ts +1 -1
  121. package/_types/src/version.d.ts.map +1 -1
  122. package/_types/tsconfig.build.tsbuildinfo +1 -1
  123. package/package.json +3 -3
  124. package/readme.md +14 -0
@@ -1 +1 @@
1
- {"version":3,"file":"OnrampModal.js","sourceRoot":"","sources":["../../../../../../src/components/widgets/OnrampWidget/modals/OnrampModal.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n getDeadAddress,\n LogLevel,\n type Execute,\n type RelayChain\n} from '@relayprotocol/relay-sdk'\nimport { type FC, useCallback, useEffect, useMemo, useState } from 'react'\nimport { Modal } from '../../../common/Modal.js'\nimport type { FiatCurrency, Token } from '../../../../types/index.js'\nimport useRelayClient from '../../../../hooks/useRelayClient.js'\nimport { EventNames } from '../../../../constants/events.js'\nimport { useHapticEvent } from '../../../../providers/RelayKitProvider.js'\nimport {\n useDepositAddressStatus,\n useQuote,\n useRequests,\n useTokenPrice\n} from '@relayprotocol/relay-kit-hooks'\nimport { extractDepositRequestId } from '../../../../utils/relayTransaction.js'\nimport { parseUnits, zeroAddress } from 'viem'\nimport {\n appendMetadataToRequest,\n extractDepositAddress\n} from '../../../../utils/quote.js'\nimport { getTxBlockExplorerUrl } from '../../../../utils/getTxBlockExplorerUrl.js'\nimport { OnrampConfirmingStep } from './steps/OnrampConfirmingStep.js'\nimport { OnrampProcessingStepUI } from './steps/OnrampProcessingStepUI.js'\nimport { OnrampProcessingPassthroughStep } from './steps/OnrampProcessingPassthroughStep.js'\nimport { OnrampSuccessStep } from './steps/OnrampSuccessStep.js'\nimport { OnrampMoonPayStep } from './steps/OnrampMoonPayStep.js'\nimport { formatBN } from '../../../../utils/numbers.js'\nimport { ErrorStep } from '../../../common/TransactionModal/steps/ErrorStep.js'\nimport { errorToJSON } from '../../../../utils/errors.js'\nimport { useAccount } from 'wagmi'\nimport { mainnet } from 'viem/chains'\n\nexport enum OnrampStep {\n Confirming,\n Moonpay,\n Processing,\n ProcessingPassthrough,\n Success,\n Error\n}\n\nexport enum OnrampProcessingStep {\n Finalizing,\n Relaying\n}\n\ntype OnrampModalProps = {\n open: boolean\n amount?: string\n amountFormatted?: string\n amountToTokenFormatted?: string\n fromToken: Token\n fromChain?: RelayChain\n toToken: Token\n toChain?: RelayChain\n fiatCurrency: FiatCurrency\n recipient?: string\n isPassthrough?: boolean\n moonPayCurrencyCode?: string\n usdRate?: number\n moonPayThemeId?: string\n moonPayThemeMode?: 'dark' | 'light'\n moonPayApiKey?: string\n moonpayOnUrlSignatureRequested: (url: string) => Promise<string> | void\n onAnalyticEvent?: (eventName: string, data?: any) => void\n onOpenChange: (open: boolean) => void\n onSuccess?: (data: Execute, moonpayRequestId: string) => void\n onError?: (error: string, data?: Execute, moonpayRequestId?: string) => void\n}\n\ntype TxHashes = { txHash: string; chainId: number }[]\n\nexport const OnrampModal: FC<OnrampModalProps> = ({\n open,\n amount,\n amountFormatted,\n recipient,\n fromToken,\n toToken,\n toChain,\n fromChain,\n fiatCurrency,\n isPassthrough,\n amountToTokenFormatted,\n moonPayCurrencyCode,\n usdRate,\n moonPayThemeId,\n moonPayThemeMode,\n moonPayApiKey,\n moonpayOnUrlSignatureRequested,\n onAnalyticEvent,\n onSuccess,\n onError,\n onOpenChange\n}) => {\n const haptic = useHapticEvent()\n const [swapError, setSwapError] = useState<Error | null>(null)\n const [step, setStep] = useState<OnrampStep>(OnrampStep.Confirming)\n const [processingStep, setProcessingStep] = useState<\n OnrampProcessingStep | undefined\n >()\n const [moonPayRequestId, setMoonPayRequestId] = useState<string | undefined>()\n const client = useRelayClient()\n const { connector } = useAccount()\n const [moonPayIdAppended, setMoonPayIdAppended] = useState(false)\n const { data: ethTokenPriceResponse } = useTokenPrice(\n client?.baseApiUrl,\n {\n address: zeroAddress,\n chainId: mainnet.id,\n referrer: client?.source\n },\n {\n refetchInterval: 60000 * 5, //5 minutes\n refetchOnWindowFocus: false\n }\n )\n const [passthroughExternalId, setPassthroughExternalId] = useState<\n string | undefined\n >()\n\n useEffect(() => {\n if (!open) {\n setStep(OnrampStep.Confirming)\n setProcessingStep(undefined)\n setMoonPayRequestId(undefined)\n setMoonPayIdAppended(false)\n setSwapError(null)\n setPassthroughExternalId(undefined)\n } else {\n if (isPassthrough) {\n setStep(OnrampStep.Moonpay)\n setPassthroughExternalId(\n `${recipient ? recipient.slice(recipient.length - 5) : ''}${Date.now()}`\n )\n }\n onAnalyticEvent?.(EventNames.ONRAMP_MODAL_OPEN, {\n isPassthrough\n })\n }\n }, [open])\n\n const ethAmount =\n ethTokenPriceResponse && ethTokenPriceResponse.price\n ? +(amount ?? '0') / ethTokenPriceResponse.price\n : 0\n\n const {\n data: quote,\n error: quoteError,\n isFetching: isFetchingQuote\n } = useQuote(\n client ?? undefined,\n undefined,\n {\n originChainId: fromToken.chainId,\n originCurrency: fromToken.address,\n destinationChainId: toToken.chainId,\n destinationCurrency: toToken.address,\n useDepositAddress: true,\n tradeType: 'EXACT_INPUT',\n amount:\n fromToken.symbol === 'USDC'\n ? parseUnits(`${amount}`, 6).toString()\n : parseUnits(`${ethAmount}`, fromToken.decimals).toString(),\n user: getDeadAddress(),\n recipient\n },\n undefined,\n undefined,\n {\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n refetchOnReconnect: false,\n enabled: Boolean(\n amount &&\n amount.length > 0 &&\n toToken &&\n fromToken &&\n !isPassthrough &&\n recipient !== undefined &&\n open\n )\n }\n )\n\n const totalAmount =\n quote?.fees && amount && !isPassthrough\n ? `${\n Math.floor(\n (Number(quote.fees.relayer?.amountUsd ?? 0) +\n Number(quote.fees.gas?.amountUsd ?? 0) +\n Number(quote.fees.app?.amountUsd ?? 0) +\n +amount) *\n 100\n ) / 100\n }`\n : amount\n const ethTotalAmount = formatBN(\n totalAmount ? +totalAmount / (ethTokenPriceResponse?.price ?? 0) : 0,\n 5,\n 18\n )\n const toTokenTotalAmount = formatBN(\n +(totalAmount ?? '0') / (usdRate ?? 0),\n 5,\n toToken.decimals\n )\n\n const depositAddress = useMemo(\n () => extractDepositAddress(quote?.steps as Execute['steps']),\n [quote]\n )\n\n const baseTransactionUrl = client?.baseApiUrl.includes('testnets')\n ? 'https://testnets.relay.link'\n : 'https://relay.link'\n\n const requestId = useMemo(\n () => extractDepositRequestId(quote?.steps as Execute['steps']),\n [quote]\n )\n\n const { data: executionStatus } = useDepositAddressStatus(\n depositAddress ? { depositAddress } : undefined,\n client?.baseApiUrl,\n {\n enabled:\n depositAddress !== undefined &&\n step === OnrampStep.Processing &&\n open,\n refetchInterval(query) {\n const observableStates = ['waiting', 'pending']\n\n if (\n !query.state.data?.status ||\n (depositAddress &&\n observableStates.includes(query.state.data?.status))\n ) {\n return 1000\n }\n return 0\n }\n }\n )\n\n const fillTxHash = useMemo(() => {\n if (executionStatus?.txHashes && executionStatus?.txHashes[0]) {\n return executionStatus?.txHashes[0]\n }\n }, [executionStatus])\n\n const { data: transactions, isLoading: isLoadingTransaction } = useRequests(\n step === OnrampStep.Success && fillTxHash\n ? {\n user: recipient,\n hash: fillTxHash\n }\n : undefined,\n client?.baseApiUrl,\n {\n enabled: Boolean(step === OnrampStep.Success && fillTxHash),\n refetchOnWindowFocus: false,\n refetchOnReconnect: false,\n refetchInterval: false,\n retryOnMount: false\n }\n )\n\n const transaction = transactions && transactions[0] ? transactions[0] : null\n const toAmountFormatted = transaction?.data?.metadata?.currencyOut\n ?.amountFormatted\n ? (formatBN(\n +transaction.data.metadata.currencyOut.amountFormatted,\n 5,\n transaction?.data?.metadata?.currencyOut?.currency?.decimals ?? 18\n ) ?? undefined)\n : amountToTokenFormatted\n\n const fillTxUrl = fillTxHash\n ? getTxBlockExplorerUrl(toToken.chainId, client?.chains, fillTxHash)\n : undefined\n\n const moonpayTxUrl = moonPayRequestId\n ? `https://buy.moonpay.com/transaction_receipt?transactionId=${moonPayRequestId}`\n : null\n\n useEffect(() => {\n if (\n executionStatus?.status === 'pending' &&\n (step !== OnrampStep.Processing ||\n processingStep !== OnrampProcessingStep.Relaying)\n ) {\n setStep(OnrampStep.Processing)\n setProcessingStep(OnrampProcessingStep.Relaying)\n }\n if (executionStatus?.status === 'success') {\n setStep(OnrampStep.Success)\n haptic('success')\n onAnalyticEvent?.(EventNames.ONRAMP_SUCCESS, {\n chain_id_in: fromToken?.chainId,\n currency_in: fromToken?.symbol,\n chain_id_out: toToken?.chainId,\n currency_out: toToken?.symbol,\n quote_id: requestId,\n txHashes: executionStatus.txHashes,\n amount,\n totalAmount,\n ethTotalAmount,\n moonPayRequestId,\n isPassthrough\n })\n onSuccess?.(quote as Execute, moonPayRequestId as string)\n setProcessingStep(undefined)\n }\n if (\n executionStatus?.status === 'failure' ||\n executionStatus?.status === 'refund' ||\n quoteError\n ) {\n const swapError = new Error(\n executionStatus?.details ??\n 'Oops! Something went wrong while processing your transaction.'\n )\n onOnrampError(\n errorToJSON(executionStatus?.details ?? quoteError),\n swapError\n )\n }\n }, [executionStatus, quoteError])\n\n useEffect(() => {\n if (\n moonPayRequestId &&\n quote &&\n executionStatus?.inTxHashes &&\n executionStatus?.inTxHashes[0] &&\n !moonPayIdAppended\n ) {\n setMoonPayIdAppended(true)\n appendMetadataToRequest(\n client?.baseApiUrl,\n `${requestId}`,\n {\n moonPayId: moonPayRequestId\n },\n client?.source\n )\n ?.then(() => {\n client?.log(\n ['Posting MoonPay request id', moonPayRequestId, requestId],\n LogLevel.Verbose\n )\n })\n .catch((e) => {\n setMoonPayIdAppended(false)\n throw e\n })\n }\n }, [moonPayRequestId, executionStatus])\n\n const allTxHashes = useMemo(() => {\n const isRefund = executionStatus?.status === 'refund'\n const _allTxHashes: TxHashes = []\n executionStatus?.txHashes?.forEach((txHash) => {\n _allTxHashes.push({\n txHash,\n chainId: isRefund\n ? (fromToken?.chainId as number)\n : (toToken?.chainId as number)\n })\n })\n\n executionStatus?.inTxHashes?.forEach((txHash) => {\n _allTxHashes.push({\n txHash,\n chainId: fromToken?.chainId as number\n })\n })\n return _allTxHashes\n }, [executionStatus?.txHashes, executionStatus?.inTxHashes])\n\n const onOnrampError = useCallback(\n (errorMsg: any, error: Error) => {\n if (step !== OnrampStep.Error) {\n onError?.(error.message, quote as Execute, moonPayRequestId)\n }\n setStep(OnrampStep.Error)\n haptic('error')\n onAnalyticEvent?.(EventNames.ONRAMP_ERROR, {\n error_message: errorMsg,\n wallet_connector: connector?.name,\n quote_id: requestId,\n amount_in: amount,\n currency_in: fromToken?.symbol,\n chain_id_in: fromToken?.chainId,\n amount_out: quote?.details?.currencyOut?.amountFormatted,\n currency_out: toToken?.symbol,\n chain_id_out: toToken?.chainId,\n txHashes: executionStatus?.txHashes ?? []\n })\n setSwapError(error)\n },\n [\n executionStatus,\n connector,\n requestId,\n quote,\n toToken,\n fromToken,\n amount,\n swapError,\n moonPayRequestId,\n step\n ]\n )\n\n return (\n <Modal\n trigger={null}\n open={open}\n onOpenChange={(open) => {\n if (!open) {\n onAnalyticEvent?.(EventNames.ONRAMP_MODAL_CLOSE)\n }\n onOpenChange(open)\n }}\n className=\"relay:overflow-hidden relay:p-4 relay:!max-w-[412px] max-[520px]:!relay-max-w-[unset]\"\n >\n {step === OnrampStep.Confirming ? (\n <OnrampConfirmingStep\n toToken={toToken}\n fromToken={fromToken}\n fromChain={fromChain}\n toChain={toChain}\n requestId={requestId ?? undefined}\n depositAddress={depositAddress}\n recipient={recipient}\n amount={amount}\n totalAmount={totalAmount ?? undefined}\n ethTotalAmount={ethTotalAmount}\n isFetchingQuote={isFetchingQuote}\n onAnalyticEvent={onAnalyticEvent}\n setStep={setStep}\n />\n ) : null}\n <OnrampMoonPayStep\n step={step}\n processingStep={processingStep}\n toToken={toToken}\n fromToken={fromToken}\n fromChain={fromChain}\n toChain={toChain}\n recipient={recipient}\n depositAddress={depositAddress}\n totalAmount={\n isPassthrough\n ? toTokenTotalAmount\n : fromToken.symbol === 'ETH'\n ? ethTotalAmount\n : (totalAmount ?? undefined)\n }\n fiatCurrency={fiatCurrency}\n isPassthrough={isPassthrough}\n moonPayCurrencyCode={moonPayCurrencyCode}\n onAnalyticEvent={onAnalyticEvent}\n setStep={setStep}\n setProcessingStep={setProcessingStep}\n setMoonPayRequestId={setMoonPayRequestId}\n moonpayOnUrlSignatureRequested={moonpayOnUrlSignatureRequested}\n onPassthroughSuccess={() => {\n setStep(OnrampStep.Success)\n onAnalyticEvent?.(EventNames.ONRAMP_PASSTHROUGH_SUCCESS, {\n moonPayRequestId,\n amount,\n totalAmount,\n ethTotalAmount\n })\n }}\n moonPayThemeId={moonPayThemeId}\n moonPayThemeMode={moonPayThemeMode}\n moonPayApiKey={moonPayApiKey}\n quoteRequestId={requestId}\n passthroughExternalId={passthroughExternalId}\n onError={(error) => {\n onOnrampError(error.message, error)\n }}\n />\n {step === OnrampStep.ProcessingPassthrough ? (\n <OnrampProcessingPassthroughStep\n toToken={toToken}\n amountToTokenFormatted={amountToTokenFormatted}\n moonpayTxUrl={moonpayTxUrl ?? undefined}\n amount={amountFormatted}\n />\n ) : null}\n {step === OnrampStep.Processing ? (\n <OnrampProcessingStepUI\n toToken={toToken}\n fromToken={fromToken}\n fromChain={fromChain}\n toChain={toChain}\n moonpayTxUrl={moonpayTxUrl ?? undefined}\n fillTxUrl={fillTxUrl}\n fillTxHash={fillTxHash}\n processingStep={processingStep}\n baseTransactionUrl={baseTransactionUrl}\n requestId={requestId ?? undefined}\n />\n ) : null}\n {step === OnrampStep.Success ? (\n <OnrampSuccessStep\n toToken={toToken}\n isLoadingTransaction={isLoadingTransaction}\n fillTxHash={fillTxHash}\n fillTxUrl={fillTxUrl}\n moonpayTxUrl={moonpayTxUrl ?? undefined}\n toAmountFormatted={toAmountFormatted}\n baseTransactionUrl={baseTransactionUrl}\n onOpenChange={onOpenChange}\n />\n ) : null}\n {step === OnrampStep.Error ? (\n <ErrorStep\n error={quoteError || swapError}\n allTxHashes={allTxHashes}\n address={recipient}\n onOpenChange={onOpenChange}\n transaction={transaction ?? undefined}\n fromChain={fromChain}\n toChain={toChain}\n />\n ) : null}\n </Modal>\n )\n}\n"]}
1
+ {"version":3,"file":"OnrampModal.js","sourceRoot":"","sources":["../../../../../../src/components/widgets/OnrampWidget/modals/OnrampModal.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n getDeadAddress,\n LogLevel,\n type Execute,\n type RelayChain\n} from '@relayprotocol/relay-sdk'\nimport { type FC, useCallback, useEffect, useMemo, useState } from 'react'\nimport { Modal } from '../../../common/Modal.js'\nimport type { FiatCurrency, Token } from '../../../../types/index.js'\nimport useRelayClient from '../../../../hooks/useRelayClient.js'\nimport { EventNames } from '../../../../constants/events.js'\nimport { useHapticEvent } from '../../../../providers/RelayKitProvider.js'\nimport {\n useDepositAddressStatus,\n useQuote,\n useRequests,\n useTokenPrice\n} from '@relayprotocol/relay-kit-hooks'\nimport {\n extractDepositRequestId,\n getRequestCurrencies\n} from '../../../../utils/relayTransaction.js'\nimport { parseUnits, zeroAddress } from 'viem'\nimport {\n appendMetadataToRequest,\n extractDepositAddress\n} from '../../../../utils/quote.js'\nimport { getTxBlockExplorerUrl } from '../../../../utils/getTxBlockExplorerUrl.js'\nimport { OnrampConfirmingStep } from './steps/OnrampConfirmingStep.js'\nimport { OnrampProcessingStepUI } from './steps/OnrampProcessingStepUI.js'\nimport { OnrampProcessingPassthroughStep } from './steps/OnrampProcessingPassthroughStep.js'\nimport { OnrampSuccessStep } from './steps/OnrampSuccessStep.js'\nimport { OnrampMoonPayStep } from './steps/OnrampMoonPayStep.js'\nimport { formatBN } from '../../../../utils/numbers.js'\nimport { ErrorStep } from '../../../common/TransactionModal/steps/ErrorStep.js'\nimport { errorToJSON } from '../../../../utils/errors.js'\nimport { useAccount } from 'wagmi'\nimport { mainnet } from 'viem/chains'\n\nexport enum OnrampStep {\n Confirming,\n Moonpay,\n Processing,\n ProcessingPassthrough,\n Success,\n Error\n}\n\nexport enum OnrampProcessingStep {\n Finalizing,\n Relaying\n}\n\ntype OnrampModalProps = {\n open: boolean\n amount?: string\n amountFormatted?: string\n amountToTokenFormatted?: string\n fromToken: Token\n fromChain?: RelayChain\n toToken: Token\n toChain?: RelayChain\n fiatCurrency: FiatCurrency\n recipient?: string\n isPassthrough?: boolean\n moonPayCurrencyCode?: string\n usdRate?: number\n moonPayThemeId?: string\n moonPayThemeMode?: 'dark' | 'light'\n moonPayApiKey?: string\n moonpayOnUrlSignatureRequested: (url: string) => Promise<string> | void\n onAnalyticEvent?: (eventName: string, data?: any) => void\n onOpenChange: (open: boolean) => void\n onSuccess?: (data: Execute, moonpayRequestId: string) => void\n onError?: (error: string, data?: Execute, moonpayRequestId?: string) => void\n}\n\ntype TxHashes = { txHash: string; chainId: number }[]\n\nexport const OnrampModal: FC<OnrampModalProps> = ({\n open,\n amount,\n amountFormatted,\n recipient,\n fromToken,\n toToken,\n toChain,\n fromChain,\n fiatCurrency,\n isPassthrough,\n amountToTokenFormatted,\n moonPayCurrencyCode,\n usdRate,\n moonPayThemeId,\n moonPayThemeMode,\n moonPayApiKey,\n moonpayOnUrlSignatureRequested,\n onAnalyticEvent,\n onSuccess,\n onError,\n onOpenChange\n}) => {\n const haptic = useHapticEvent()\n const [swapError, setSwapError] = useState<Error | null>(null)\n const [step, setStep] = useState<OnrampStep>(OnrampStep.Confirming)\n const [processingStep, setProcessingStep] = useState<\n OnrampProcessingStep | undefined\n >()\n const [moonPayRequestId, setMoonPayRequestId] = useState<string | undefined>()\n const client = useRelayClient()\n const { connector } = useAccount()\n const [moonPayIdAppended, setMoonPayIdAppended] = useState(false)\n const { data: ethTokenPriceResponse } = useTokenPrice(\n client?.baseApiUrl,\n {\n address: zeroAddress,\n chainId: mainnet.id,\n referrer: client?.source\n },\n {\n refetchInterval: 60000 * 5, //5 minutes\n refetchOnWindowFocus: false\n }\n )\n const [passthroughExternalId, setPassthroughExternalId] = useState<\n string | undefined\n >()\n\n useEffect(() => {\n if (!open) {\n setStep(OnrampStep.Confirming)\n setProcessingStep(undefined)\n setMoonPayRequestId(undefined)\n setMoonPayIdAppended(false)\n setSwapError(null)\n setPassthroughExternalId(undefined)\n } else {\n if (isPassthrough) {\n setStep(OnrampStep.Moonpay)\n setPassthroughExternalId(\n `${recipient ? recipient.slice(recipient.length - 5) : ''}${Date.now()}`\n )\n }\n onAnalyticEvent?.(EventNames.ONRAMP_MODAL_OPEN, {\n isPassthrough\n })\n }\n }, [open])\n\n const ethAmount =\n ethTokenPriceResponse && ethTokenPriceResponse.price\n ? +(amount ?? '0') / ethTokenPriceResponse.price\n : 0\n\n const {\n data: quote,\n error: quoteError,\n isFetching: isFetchingQuote\n } = useQuote(\n client ?? undefined,\n undefined,\n {\n originChainId: fromToken.chainId,\n originCurrency: fromToken.address,\n destinationChainId: toToken.chainId,\n destinationCurrency: toToken.address,\n useDepositAddress: true,\n tradeType: 'EXACT_INPUT',\n amount:\n fromToken.symbol === 'USDC'\n ? parseUnits(`${amount}`, 6).toString()\n : parseUnits(`${ethAmount}`, fromToken.decimals).toString(),\n user: getDeadAddress(),\n recipient\n },\n undefined,\n undefined,\n {\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n refetchOnReconnect: false,\n enabled: Boolean(\n amount &&\n amount.length > 0 &&\n toToken &&\n fromToken &&\n !isPassthrough &&\n recipient !== undefined &&\n open\n )\n }\n )\n\n const totalAmount =\n quote?.fees && amount && !isPassthrough\n ? `${\n Math.floor(\n (Number(quote.fees.relayer?.amountUsd ?? 0) +\n Number(quote.fees.gas?.amountUsd ?? 0) +\n Number(quote.fees.app?.amountUsd ?? 0) +\n +amount) *\n 100\n ) / 100\n }`\n : amount\n const ethTotalAmount = formatBN(\n totalAmount ? +totalAmount / (ethTokenPriceResponse?.price ?? 0) : 0,\n 5,\n 18\n )\n const toTokenTotalAmount = formatBN(\n +(totalAmount ?? '0') / (usdRate ?? 0),\n 5,\n toToken.decimals\n )\n\n const depositAddress = useMemo(\n () => extractDepositAddress(quote?.steps as Execute['steps']),\n [quote]\n )\n\n const baseTransactionUrl = client?.baseApiUrl.includes('testnets')\n ? 'https://testnets.relay.link'\n : 'https://relay.link'\n\n const requestId = useMemo(\n () => extractDepositRequestId(quote?.steps as Execute['steps']),\n [quote]\n )\n\n const { data: executionStatus } = useDepositAddressStatus(\n depositAddress ? { depositAddress } : undefined,\n client?.baseApiUrl,\n {\n enabled:\n depositAddress !== undefined &&\n step === OnrampStep.Processing &&\n open,\n refetchInterval(query) {\n // Keep polling until the request reaches a terminal state. Non-terminal\n // states (waiting, pending, depositing, submitted) and an unknown\n // status all continue polling.\n const terminalStates = ['success', 'failure', 'refund']\n const status = query.state.data?.status\n return status && terminalStates.includes(status) ? 0 : 1000\n }\n }\n )\n\n const fillTxHash = useMemo(() => {\n if (executionStatus?.txHashes && executionStatus?.txHashes[0]) {\n return executionStatus?.txHashes[0]\n }\n }, [executionStatus])\n\n const { data: transactions, isLoading: isLoadingTransaction } = useRequests(\n step === OnrampStep.Success && fillTxHash\n ? {\n fillTxHash\n }\n : undefined,\n client?.baseApiUrl,\n {\n enabled: Boolean(step === OnrampStep.Success && fillTxHash),\n refetchOnWindowFocus: false,\n refetchOnReconnect: false,\n refetchInterval: false,\n retryOnMount: false\n }\n )\n\n const transaction = transactions && transactions[0] ? transactions[0] : null\n const { currencyOut: requestCurrencyOut } = getRequestCurrencies(transaction)\n const toAmountFormatted = requestCurrencyOut?.amountFormatted\n ? (formatBN(\n +requestCurrencyOut.amountFormatted,\n 5,\n requestCurrencyOut.currency?.decimals ?? 18\n ) ?? undefined)\n : amountToTokenFormatted\n\n const fillTxUrl = fillTxHash\n ? getTxBlockExplorerUrl(toToken.chainId, client?.chains, fillTxHash)\n : undefined\n\n const moonpayTxUrl = moonPayRequestId\n ? `https://buy.moonpay.com/transaction_receipt?transactionId=${moonPayRequestId}`\n : null\n\n useEffect(() => {\n if (\n (executionStatus?.status === 'pending' ||\n executionStatus?.status === 'depositing' ||\n executionStatus?.status === 'submitted') &&\n (step !== OnrampStep.Processing ||\n processingStep !== OnrampProcessingStep.Relaying)\n ) {\n setStep(OnrampStep.Processing)\n setProcessingStep(OnrampProcessingStep.Relaying)\n }\n if (executionStatus?.status === 'success') {\n setStep(OnrampStep.Success)\n haptic('success')\n onAnalyticEvent?.(EventNames.ONRAMP_SUCCESS, {\n chain_id_in: fromToken?.chainId,\n currency_in: fromToken?.symbol,\n chain_id_out: toToken?.chainId,\n currency_out: toToken?.symbol,\n quote_id: requestId,\n txHashes: executionStatus.txHashes,\n amount,\n totalAmount,\n ethTotalAmount,\n moonPayRequestId,\n isPassthrough\n })\n onSuccess?.(quote as Execute, moonPayRequestId as string)\n setProcessingStep(undefined)\n }\n if (\n executionStatus?.status === 'failure' ||\n executionStatus?.status === 'refund' ||\n quoteError\n ) {\n const swapError = new Error(\n executionStatus?.details ??\n 'Oops! Something went wrong while processing your transaction.'\n )\n onOnrampError(\n errorToJSON(executionStatus?.details ?? quoteError),\n swapError\n )\n }\n }, [executionStatus, quoteError])\n\n useEffect(() => {\n if (\n moonPayRequestId &&\n quote &&\n executionStatus?.inTxHashes &&\n executionStatus?.inTxHashes[0] &&\n !moonPayIdAppended\n ) {\n setMoonPayIdAppended(true)\n appendMetadataToRequest(\n client?.baseApiUrl,\n `${requestId}`,\n {\n moonPayId: moonPayRequestId\n },\n client?.source\n )\n ?.then(() => {\n client?.log(\n ['Posting MoonPay request id', moonPayRequestId, requestId],\n LogLevel.Verbose\n )\n })\n .catch((e) => {\n setMoonPayIdAppended(false)\n throw e\n })\n }\n }, [moonPayRequestId, executionStatus])\n\n const allTxHashes = useMemo(() => {\n const isRefund = executionStatus?.status === 'refund'\n const _allTxHashes: TxHashes = []\n executionStatus?.txHashes?.forEach((txHash) => {\n _allTxHashes.push({\n txHash,\n chainId: isRefund\n ? (fromToken?.chainId as number)\n : (toToken?.chainId as number)\n })\n })\n\n executionStatus?.inTxHashes?.forEach((txHash) => {\n _allTxHashes.push({\n txHash,\n chainId: fromToken?.chainId as number\n })\n })\n return _allTxHashes\n }, [executionStatus?.txHashes, executionStatus?.inTxHashes])\n\n const onOnrampError = useCallback(\n (errorMsg: any, error: Error) => {\n if (step !== OnrampStep.Error) {\n onError?.(error.message, quote as Execute, moonPayRequestId)\n }\n setStep(OnrampStep.Error)\n haptic('error')\n onAnalyticEvent?.(EventNames.ONRAMP_ERROR, {\n error_message: errorMsg,\n wallet_connector: connector?.name,\n quote_id: requestId,\n amount_in: amount,\n currency_in: fromToken?.symbol,\n chain_id_in: fromToken?.chainId,\n amount_out: quote?.details?.currencyOut?.amountFormatted,\n currency_out: toToken?.symbol,\n chain_id_out: toToken?.chainId,\n txHashes: executionStatus?.txHashes ?? []\n })\n setSwapError(error)\n },\n [\n executionStatus,\n connector,\n requestId,\n quote,\n toToken,\n fromToken,\n amount,\n swapError,\n moonPayRequestId,\n step\n ]\n )\n\n return (\n <Modal\n trigger={null}\n open={open}\n onOpenChange={(open) => {\n if (!open) {\n onAnalyticEvent?.(EventNames.ONRAMP_MODAL_CLOSE)\n }\n onOpenChange(open)\n }}\n className=\"relay:overflow-hidden relay:p-4 relay:!max-w-[412px] max-[520px]:!relay-max-w-[unset]\"\n >\n {step === OnrampStep.Confirming ? (\n <OnrampConfirmingStep\n toToken={toToken}\n fromToken={fromToken}\n fromChain={fromChain}\n toChain={toChain}\n requestId={requestId ?? undefined}\n depositAddress={depositAddress}\n recipient={recipient}\n amount={amount}\n totalAmount={totalAmount ?? undefined}\n ethTotalAmount={ethTotalAmount}\n isFetchingQuote={isFetchingQuote}\n onAnalyticEvent={onAnalyticEvent}\n setStep={setStep}\n />\n ) : null}\n <OnrampMoonPayStep\n step={step}\n processingStep={processingStep}\n toToken={toToken}\n fromToken={fromToken}\n fromChain={fromChain}\n toChain={toChain}\n recipient={recipient}\n depositAddress={depositAddress}\n totalAmount={\n isPassthrough\n ? toTokenTotalAmount\n : fromToken.symbol === 'ETH'\n ? ethTotalAmount\n : (totalAmount ?? undefined)\n }\n fiatCurrency={fiatCurrency}\n isPassthrough={isPassthrough}\n moonPayCurrencyCode={moonPayCurrencyCode}\n onAnalyticEvent={onAnalyticEvent}\n setStep={setStep}\n setProcessingStep={setProcessingStep}\n setMoonPayRequestId={setMoonPayRequestId}\n moonpayOnUrlSignatureRequested={moonpayOnUrlSignatureRequested}\n onPassthroughSuccess={() => {\n setStep(OnrampStep.Success)\n onAnalyticEvent?.(EventNames.ONRAMP_PASSTHROUGH_SUCCESS, {\n moonPayRequestId,\n amount,\n totalAmount,\n ethTotalAmount\n })\n }}\n moonPayThemeId={moonPayThemeId}\n moonPayThemeMode={moonPayThemeMode}\n moonPayApiKey={moonPayApiKey}\n quoteRequestId={requestId}\n passthroughExternalId={passthroughExternalId}\n onError={(error) => {\n onOnrampError(error.message, error)\n }}\n />\n {step === OnrampStep.ProcessingPassthrough ? (\n <OnrampProcessingPassthroughStep\n toToken={toToken}\n amountToTokenFormatted={amountToTokenFormatted}\n moonpayTxUrl={moonpayTxUrl ?? undefined}\n amount={amountFormatted}\n />\n ) : null}\n {step === OnrampStep.Processing ? (\n <OnrampProcessingStepUI\n toToken={toToken}\n fromToken={fromToken}\n fromChain={fromChain}\n toChain={toChain}\n moonpayTxUrl={moonpayTxUrl ?? undefined}\n fillTxUrl={fillTxUrl}\n fillTxHash={fillTxHash}\n processingStep={processingStep}\n baseTransactionUrl={baseTransactionUrl}\n requestId={requestId ?? undefined}\n />\n ) : null}\n {step === OnrampStep.Success ? (\n <OnrampSuccessStep\n toToken={toToken}\n isLoadingTransaction={isLoadingTransaction}\n fillTxHash={fillTxHash}\n fillTxUrl={fillTxUrl}\n moonpayTxUrl={moonpayTxUrl ?? undefined}\n toAmountFormatted={toAmountFormatted}\n baseTransactionUrl={baseTransactionUrl}\n onOpenChange={onOpenChange}\n />\n ) : null}\n {step === OnrampStep.Error ? (\n <ErrorStep\n error={quoteError || swapError}\n allTxHashes={allTxHashes}\n address={recipient}\n onOpenChange={onOpenChange}\n transaction={transaction ?? undefined}\n fromChain={fromChain}\n toChain={toChain}\n />\n ) : null}\n </Modal>\n )\n}\n"]}
@@ -225,7 +225,7 @@ const OnrampWidget = ({ defaultWalletAddress, moonPayApiKey, moonpayOnUrlSignatu
225
225
  else {
226
226
  setOnrampModalOpen(true);
227
227
  }
228
- }, children: ctaCopy }), (0, jsx_runtime_1.jsx)(CustomAddressModal_js_1.CustomAddressModal, { open: addressModalOpen, toAddress: recipient, toChain: toChain, isConnected: (linkedWallets && linkedWallets.length > 0) || isConnected
228
+ }, children: ctaCopy }), (0, jsx_runtime_1.jsx)(CustomAddressModal_js_1.CustomAddressModal, { open: addressModalOpen, toToken: token, toAddress: recipient, toChain: toChain, isConnected: (linkedWallets && linkedWallets.length > 0) || isConnected
229
229
  ? true
230
230
  : false, linkedWallets: linkedWallets ?? [], multiWalletSupportEnabled: multiWalletSupportEnabled, onAnalyticEvent: onAnalyticEvent, onOpenChange: (open) => {
231
231
  setAddressModalOpen(open);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/components/widgets/OnrampWidget/widget/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { FC } from 'react'\nimport OnrampWidgetRenderer from './OnrampWidgetRenderer.js'\nimport { Box, Button, Flex, Text } from '../../../primitives/index.js'\nimport AmountInput from '../../../common/AmountInput.js'\nimport { useCallback, useContext, useEffect, useState } from 'react'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faArrowDownLong } from '@fortawesome/free-solid-svg-icons/faArrowDownLong'\nimport { faArrowUpLong } from '@fortawesome/free-solid-svg-icons/faArrowUpLong'\nimport { faClipboard } from '@fortawesome/free-solid-svg-icons/faClipboard'\nimport { faCreditCard } from '@fortawesome/free-solid-svg-icons/faCreditCard'\nimport TokenSelector from '../../../common/TokenSelector/TokenSelector.js'\nimport { EventNames } from '../../../../constants/events.js'\nimport { TokenTrigger } from '../../../common/TokenSelector/triggers/TokenTrigger.js'\nimport type { LinkedWallet, Token } from '../../../../types/index.js'\nimport type { ChainVM, Execute, RelayChain } from '@relayprotocol/relay-sdk'\nimport { MultiWalletDropdown } from '../../../common/MultiWalletDropdown.js'\nimport { CustomAddressModal } from '../../../common/CustomAddressModal.js'\nimport { useAccount } from 'wagmi'\nimport { OnrampModal } from '../modals/OnrampModal.js'\nimport { formatBN } from '../../../../utils/numbers.js'\nimport { findSupportedWallet } from '../../../../utils/address.js'\nimport {\n ProviderOptionsContext,\n useHapticEvent\n} from '../../../../providers/RelayKitProvider.js'\n\ntype BaseOnrampWidgetProps = {\n defaultWalletAddress?: string\n supportedWalletVMs: Omit<ChainVM, 'hypevm' | 'lvm'>[]\n moonPayApiKey: string\n moonPayThemeId?: string\n moonPayThemeMode?: 'dark' | 'light'\n token?: Token\n setToken?: (token: Token) => void\n disablePasteWalletAddressOption?: boolean\n onTokenChange?: (token?: Token) => void\n onSuccess?: (data: Execute, moonpayRequestId: string) => void\n onError?: (error: string, data?: Execute, moonpayRequestId?: string) => void\n moonpayOnUrlSignatureRequested: (url: string) => Promise<string> | void\n onConnectWallet?: () => void\n onAnalyticEvent?: (eventName: string, data?: any) => void\n}\n\ntype MultiWalletDisabledProps = BaseOnrampWidgetProps & {\n multiWalletSupportEnabled?: false\n linkedWallets?: never\n onSetPrimaryWallet?: never\n onLinkNewWallet?: never\n}\n\ntype MultiWalletEnabledProps = BaseOnrampWidgetProps & {\n multiWalletSupportEnabled: true\n linkedWallets: LinkedWallet[]\n onSetPrimaryWallet?: (address: string) => void\n onLinkNewWallet: (params: {\n chain?: RelayChain\n direction: 'to' | 'from'\n }) => Promise<LinkedWallet> | void\n}\n\nexport type OnrampWidgetProps =\n | MultiWalletDisabledProps\n | MultiWalletEnabledProps\n\nconst OnrampWidget: FC<OnrampWidgetProps> = ({\n defaultWalletAddress,\n moonPayApiKey,\n moonpayOnUrlSignatureRequested,\n linkedWallets,\n multiWalletSupportEnabled,\n supportedWalletVMs,\n moonPayThemeId,\n moonPayThemeMode,\n token,\n setToken,\n disablePasteWalletAddressOption,\n onTokenChange,\n onConnectWallet,\n onLinkNewWallet,\n onSetPrimaryWallet,\n onAnalyticEvent: _onAnalyticEvent,\n onSuccess\n}) => {\n const onAnalyticEvent = useCallback(\n (eventName: string, data?: any) => {\n try {\n _onAnalyticEvent?.(eventName, data)\n } catch (e) {\n console.error('Error in onAnalyticEvent', eventName, data, e)\n }\n },\n [_onAnalyticEvent]\n )\n const [addressModalOpen, setAddressModalOpen] = useState(false)\n const [onrampModalOpen, setOnrampModalOpen] = useState(false)\n const { isConnected } = useAccount()\n const providerOptionsContext = useContext(ProviderOptionsContext)\n const haptic = useHapticEvent()\n const connectorKeyOverrides = providerOptionsContext.vmConnectorKeyOverrides\n\n return (\n <OnrampWidgetRenderer\n defaultWalletAddress={defaultWalletAddress}\n supportedWalletVMs={supportedWalletVMs}\n linkedWallets={linkedWallets}\n multiWalletSupportEnabled={multiWalletSupportEnabled}\n moonPayApiKey={moonPayApiKey}\n token={token}\n setToken={setToken}\n >\n {({\n displayCurrency,\n setDisplayCurrency,\n recipient,\n setRecipient,\n isRecipientLinked,\n isValidRecipient,\n amount,\n amountToToken,\n setInputValue,\n amountToTokenFormatted,\n token,\n fromToken,\n setToken,\n toChain,\n fromChain,\n toDisplayName,\n toChainWalletVMSupported,\n fiatCurrency,\n setFiatCurrency,\n minAmountCurrency,\n notEnoughFiat,\n ctaCopy,\n moonPayCurrencyCode,\n isPassthrough,\n usdRate\n }) => {\n //Reset recipient if no longer valid\n useEffect(() => {\n if (\n multiWalletSupportEnabled &&\n fromChain &&\n recipient &&\n linkedWallets &&\n !isValidRecipient\n ) {\n const supportedAddress = findSupportedWallet(\n fromChain,\n recipient,\n linkedWallets,\n connectorKeyOverrides\n )\n if (supportedAddress) {\n onSetPrimaryWallet?.(supportedAddress)\n }\n }\n\n if (\n multiWalletSupportEnabled &&\n toChain &&\n recipient &&\n linkedWallets &&\n !isValidRecipient\n ) {\n setRecipient(undefined)\n }\n }, [\n multiWalletSupportEnabled,\n fromChain?.id,\n toChain?.id,\n linkedWallets,\n onSetPrimaryWallet,\n isValidRecipient,\n connectorKeyOverrides\n ])\n\n const formattedAmount =\n amount === ''\n ? ''\n : amount.endsWith('.')\n ? new Intl.NumberFormat(undefined, {\n style: 'currency',\n currency: 'USD',\n currencyDisplay: 'narrowSymbol',\n minimumFractionDigits: 0,\n maximumFractionDigits: 0\n }).format(+amount) + '.'\n : new Intl.NumberFormat(undefined, {\n style: 'currency',\n currency: 'USD',\n currencyDisplay: 'narrowSymbol',\n minimumFractionDigits: amount.includes('.0')\n ? 1\n : amount.endsWith('0') && amount.includes('.')\n ? 2\n : 0,\n maximumFractionDigits: amount.includes('.') ? 2 : 0,\n minimumSignificantDigits: 1,\n maximumSignificantDigits: amount.length\n }).format(+amount)\n\n return (\n <div\n className=\"relay-kit-reset relay:max-w-[408px] relay:min-w-[320px] relay:w-full\"\n >\n <Flex\n direction=\"column\"\n className=\"relay:gap-2 relay:w-full relay:border-widget\"\n >\n <Flex\n direction=\"column\"\n className=\"relay:w-full relay:overflow-hidden relay:px-4 relay:pt-[40px] relay:pb-[24px] relay:rounded-widget-card relay:bg-[var(--relay-colors-widget-background)] relay:border-widget-card relay:mb-[var(--relay-spacing-widget-card-section-gutter)]\"\n >\n <Text\n style=\"subtitle2\"\n color=\"subtle\"\n className=\"relay:text-center\"\n >\n Enter an amount\n </Text>\n <AmountInput\n value={\n displayCurrency\n ? amountToToken !== ''\n ? `${amountToToken} ${token.symbol}`\n : ''\n : formattedAmount\n }\n setValue={(e) => {\n //unused\n }}\n placeholder={` 0`}\n onChange={(e) => {\n const input = e.target as any\n\n setInputValue(input.value)\n if (displayCurrency) {\n setTimeout(() => {\n const numericValue = input.value.match(/[\\d.]+/g)\n const numericValueLength =\n numericValue !== null\n ? numericValue.join('').length\n : 0\n input.setSelectionRange(\n numericValueLength,\n numericValueLength\n )\n }, 0)\n }\n }}\n onKeyDown={(e) => {\n const input = e.target as HTMLInputElement\n const cursorPosition = input.selectionStart\n\n // Prevent multiple decimals\n if (\n e.key === '.' &&\n (input.value.match(/\\./g) || []).length > 0\n ) {\n e.preventDefault() // Prevent the key press if there's already a decimal\n return\n }\n\n if (e.key === 'ArrowLeft' && cursorPosition !== null) {\n const valueBeforeCursor = input.value.substring(\n 0,\n cursorPosition\n )\n const charBeforeCursor = valueBeforeCursor.charAt(\n cursorPosition - 1\n )\n if (charBeforeCursor === '$') {\n e.preventDefault()\n }\n }\n if (e.key === 'ArrowRight' && cursorPosition !== null) {\n const valueAfterCursor = input.value.substring(\n 0,\n cursorPosition + 1\n )\n const charAfterCursor =\n valueAfterCursor.charAt(cursorPosition)\n if (charAfterCursor === ' ') {\n e.preventDefault()\n }\n }\n }}\n onMouseDown={(e) => {\n const input = e.target as HTMLInputElement\n input.style.caretColor = 'transparent'\n }}\n onMouseUp={(e) => {\n const input = e.target as HTMLInputElement\n const cursorPosition = input.selectionStart // Get the current cursor position\n if (cursorPosition !== null) {\n const valueAfterCursor = input.value.substring(\n 0,\n cursorPosition + 1\n )\n const charAfterCursor =\n valueAfterCursor.charAt(cursorPosition)\n const valueBeforeCursor = input.value.substring(\n 0,\n cursorPosition\n )\n const charBeforeCursor = valueBeforeCursor.charAt(\n cursorPosition - 1\n )\n const specialCharacterRegex = /[ a-zA-Z]/\n const alphaRegex = /[a-zA-Z]/\n if (\n charAfterCursor === '$' ||\n alphaRegex.test(charAfterCursor) ||\n specialCharacterRegex.test(charBeforeCursor)\n ) {\n e.preventDefault()\n e.stopPropagation()\n input.setSelectionRange(1, 1)\n }\n }\n input.style.caretColor = 'initial'\n }}\n className=\"relay:text-center relay:whitespace-pre\"\n inputStyle={{\n fontWeight: '700',\n fontSize: 48,\n lineHeight: '58px',\n textAlign: 'center',\n textIndent:\n amount === '' || amountToToken === ''\n ? '-36px'\n : undefined,\n whiteSpace: 'pre'\n }}\n containerClassName=\"relay:mb-2 relay:w-full\"\n />\n {notEnoughFiat ? (\n <Text color=\"red\" className=\"relay:mb-[24px] relay:text-center\">\n Minimum amount is{' '}\n {displayCurrency && minAmountCurrency\n ? `${minAmountCurrency} ${token.symbol}`\n : '$20'}\n </Text>\n ) : undefined}\n <button\n className=\"relay:gap-2 relay:cursor-pointer relay:flex relay:items-center relay:justify-center relay:mb-[16px] relay:self-center\"\n onClick={() => {\n const _displayCurrency = !displayCurrency\n setDisplayCurrency(_displayCurrency)\n if (_displayCurrency) {\n let _amountToToken = 21 / usdRate\n if (+amountToToken > _amountToToken) {\n _amountToToken = +amountToToken\n }\n setInputValue(\n formatBN(_amountToToken, 5, token.decimals, false),\n _displayCurrency\n )\n }\n }}\n >\n <Text style=\"body2\" color=\"subtle\">\n {displayCurrency\n ? formattedAmount\n : `${amountToTokenFormatted} ${token.symbol}`}\n </Text>\n <Flex\n className=\"relay:text-[color:var(--relay-colors-gray8)]\"\n >\n <FontAwesomeIcon\n className=\"relay:h-[14px]\"\n icon={faArrowUpLong}\n />\n <FontAwesomeIcon\n className=\"relay:h-[14px]\"\n icon={faArrowDownLong}\n />\n </Flex>\n </button>\n <TokenSelector\n address={recipient}\n isValidAddress={isValidRecipient}\n token={token}\n onAnalyticEvent={onAnalyticEvent}\n fromChainWalletVMSupported={false}\n supportedWalletVMs={[]}\n setToken={(token) => {\n setToken(token)\n onTokenChange?.(token)\n }}\n context=\"to\"\n trigger={\n <div\n className=\"relay:w-max relay:mx-auto relay:mb-[16px]\"\n data-testid=\"onramp-token-select-button\"\n >\n <TokenTrigger token={token} />\n </div>\n }\n />\n <Flex className=\"relay:gap-2 relay:mx-auto\">\n <Button\n color=\"white\"\n corners=\"pill\"\n size=\"none\"\n className=\"relay:h-[30px] relay:px-[14px] relay:py-[4px] relay:text-[14px]\"\n onClick={() => {\n setDisplayCurrency(false)\n setInputValue('100', false)\n }}\n >\n <Text style=\"subtitle2\">$100</Text>\n </Button>\n <Button\n color=\"white\"\n corners=\"pill\"\n size=\"none\"\n className=\"relay:h-[30px] relay:px-[14px] relay:py-[4px] relay:text-[14px]\"\n onClick={() => {\n setDisplayCurrency(false)\n setInputValue('300', false)\n }}\n >\n <Text style=\"subtitle2\">$300</Text>\n </Button>\n <Button\n color=\"white\"\n corners=\"pill\"\n size=\"none\"\n className=\"relay:h-[30px] relay:px-[14px] relay:py-[4px] relay:text-[14px]\"\n onClick={() => {\n setDisplayCurrency(false)\n setInputValue('1000', false)\n }}\n >\n <Text style=\"subtitle2\">$1,000</Text>\n </Button>\n </Flex>\n </Flex>\n </Flex>\n <Flex\n direction=\"column\"\n className=\"relay:w-full relay:overflow-hidden relay:p-4 relay:rounded-widget-card relay:bg-[var(--relay-colors-widget-background)] relay:border-widget-card relay:mb-[var(--relay-spacing-widget-card-section-gutter)]\"\n >\n <Flex justify=\"between\" align=\"center\" className=\"relay:mb-2\">\n <Text color=\"subtle\" style=\"subtitle2\">\n Recipient\n </Text>\n {multiWalletSupportEnabled === true &&\n toChainWalletVMSupported ? (\n <MultiWalletDropdown\n context=\"destination\"\n selectedWalletAddress={recipient}\n onSelect={(wallet) => setRecipient(wallet.address)}\n chain={toChain}\n onLinkNewWallet={() => {\n if (\n (!linkedWallets || linkedWallets.length === 0) &&\n toChainWalletVMSupported\n ) {\n onConnectWallet?.()\n } else {\n onLinkNewWallet?.({\n chain: toChain,\n direction: 'to'\n })?.then((wallet) => {\n onSetPrimaryWallet?.(wallet.address)\n })\n }\n }}\n setAddressModalOpen={setAddressModalOpen}\n wallets={linkedWallets!}\n onAnalyticEvent={onAnalyticEvent}\n disablePasteWalletAddressOption={\n disablePasteWalletAddressOption\n }\n testId=\"onramp-wallet-select-button\"\n />\n ) : null}\n {!multiWalletSupportEnabled || !toChainWalletVMSupported ? (\n <Button\n color={\n isValidRecipient && !isRecipientLinked\n ? 'warning'\n : 'secondary'\n }\n corners=\"pill\"\n size=\"none\"\n className=\"relay:flex relay:items-center relay:px-2 relay:py-1\"\n onClick={() => {\n setAddressModalOpen(true)\n onAnalyticEvent?.(EventNames.SWAP_ADDRESS_MODAL_CLICKED)\n }}\n >\n {isValidRecipient && !isRecipientLinked ? (\n <Box className=\"relay:text-[color:var(--relay-colors-amber11)]\">\n <FontAwesomeIcon\n icon={faClipboard}\n width={16}\n height={16}\n />\n </Box>\n ) : null}\n <Text\n style=\"subtitle2\"\n className={\n isValidRecipient && !isRecipientLinked\n ? 'relay:text-[color:var(--relay-colors-amber11)]'\n : 'relay:text-[color:var(--relay-colors-anchor-color)]'\n }\n >\n {!isValidRecipient ? `Enter Address` : toDisplayName}\n </Text>\n </Button>\n ) : null}\n </Flex>\n <Flex justify=\"between\" align=\"center\">\n <Text color=\"subtle\" style=\"subtitle2\">\n Paying with\n </Text>\n <Flex\n className=\"relay:items-center relay:gap-2 relay:ml-auto relay:mr-2 relay:text-[color:var(--relay-colors-gray9)]\"\n >\n <FontAwesomeIcon style={{ width: 16 }} icon={faCreditCard} />\n <Text style=\"subtitle2\">Card</Text>\n </Flex>\n {/* Hiding this until issues are resolved with MoonPay\n <FiatCurrencyModal\n fiatCurrency={fiatCurrency}\n setFiatCurrency={setFiatCurrency}\n moonPayApiKey={moonPayApiKey}\n /> */}\n </Flex>\n </Flex>\n <Button\n cta={true}\n className=\"relay:w-full relay:justify-center\"\n disabled={notEnoughFiat}\n onClick={() => {\n haptic('medium')\n if (!recipient && toChainWalletVMSupported) {\n if (!linkedWallets || linkedWallets.length === 0) {\n onConnectWallet?.()\n } else {\n onLinkNewWallet?.({\n chain: toChain,\n direction: 'to'\n })?.then((wallet) => {\n onSetPrimaryWallet?.(wallet.address)\n })\n }\n } else if (!recipient) {\n setAddressModalOpen(true)\n } else {\n setOnrampModalOpen(true)\n }\n }}\n >\n {ctaCopy}\n </Button>\n <CustomAddressModal\n open={addressModalOpen}\n toAddress={recipient}\n toChain={toChain}\n isConnected={\n (linkedWallets && linkedWallets.length > 0) || isConnected\n ? true\n : false\n }\n linkedWallets={linkedWallets ?? []}\n multiWalletSupportEnabled={multiWalletSupportEnabled}\n onAnalyticEvent={onAnalyticEvent}\n onOpenChange={(open) => {\n setAddressModalOpen(open)\n }}\n onConfirmed={(address) => {\n setRecipient(address)\n }}\n onClear={() => {\n setRecipient(undefined)\n }}\n />\n <OnrampModal\n open={onrampModalOpen}\n onOpenChange={setOnrampModalOpen}\n onAnalyticEvent={onAnalyticEvent}\n moonpayOnUrlSignatureRequested={moonpayOnUrlSignatureRequested}\n fromToken={fromToken}\n toToken={token}\n fromChain={fromChain}\n toChain={toChain}\n amount={amount}\n amountFormatted={formattedAmount}\n amountToTokenFormatted={amountToTokenFormatted}\n fiatCurrency={fiatCurrency}\n recipient={recipient}\n onSuccess={onSuccess}\n moonPayCurrencyCode={moonPayCurrencyCode}\n isPassthrough={isPassthrough}\n usdRate={usdRate}\n moonPayThemeId={moonPayThemeId}\n moonPayThemeMode={moonPayThemeMode}\n moonPayApiKey={moonPayApiKey}\n />\n </div>\n )\n }}\n </OnrampWidgetRenderer>\n )\n}\n\nexport default OnrampWidget\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/components/widgets/OnrampWidget/widget/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { FC } from 'react'\nimport OnrampWidgetRenderer from './OnrampWidgetRenderer.js'\nimport { Box, Button, Flex, Text } from '../../../primitives/index.js'\nimport AmountInput from '../../../common/AmountInput.js'\nimport { useCallback, useContext, useEffect, useState } from 'react'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { faArrowDownLong } from '@fortawesome/free-solid-svg-icons/faArrowDownLong'\nimport { faArrowUpLong } from '@fortawesome/free-solid-svg-icons/faArrowUpLong'\nimport { faClipboard } from '@fortawesome/free-solid-svg-icons/faClipboard'\nimport { faCreditCard } from '@fortawesome/free-solid-svg-icons/faCreditCard'\nimport TokenSelector from '../../../common/TokenSelector/TokenSelector.js'\nimport { EventNames } from '../../../../constants/events.js'\nimport { TokenTrigger } from '../../../common/TokenSelector/triggers/TokenTrigger.js'\nimport type { LinkedWallet, Token } from '../../../../types/index.js'\nimport type { ChainVM, Execute, RelayChain } from '@relayprotocol/relay-sdk'\nimport { MultiWalletDropdown } from '../../../common/MultiWalletDropdown.js'\nimport { CustomAddressModal } from '../../../common/CustomAddressModal.js'\nimport { useAccount } from 'wagmi'\nimport { OnrampModal } from '../modals/OnrampModal.js'\nimport { formatBN } from '../../../../utils/numbers.js'\nimport { findSupportedWallet } from '../../../../utils/address.js'\nimport {\n ProviderOptionsContext,\n useHapticEvent\n} from '../../../../providers/RelayKitProvider.js'\n\ntype BaseOnrampWidgetProps = {\n defaultWalletAddress?: string\n supportedWalletVMs: Omit<ChainVM, 'hypevm' | 'lvm'>[]\n moonPayApiKey: string\n moonPayThemeId?: string\n moonPayThemeMode?: 'dark' | 'light'\n token?: Token\n setToken?: (token: Token) => void\n disablePasteWalletAddressOption?: boolean\n onTokenChange?: (token?: Token) => void\n onSuccess?: (data: Execute, moonpayRequestId: string) => void\n onError?: (error: string, data?: Execute, moonpayRequestId?: string) => void\n moonpayOnUrlSignatureRequested: (url: string) => Promise<string> | void\n onConnectWallet?: () => void\n onAnalyticEvent?: (eventName: string, data?: any) => void\n}\n\ntype MultiWalletDisabledProps = BaseOnrampWidgetProps & {\n multiWalletSupportEnabled?: false\n linkedWallets?: never\n onSetPrimaryWallet?: never\n onLinkNewWallet?: never\n}\n\ntype MultiWalletEnabledProps = BaseOnrampWidgetProps & {\n multiWalletSupportEnabled: true\n linkedWallets: LinkedWallet[]\n onSetPrimaryWallet?: (address: string) => void\n onLinkNewWallet: (params: {\n chain?: RelayChain\n direction: 'to' | 'from'\n }) => Promise<LinkedWallet> | void\n}\n\nexport type OnrampWidgetProps =\n | MultiWalletDisabledProps\n | MultiWalletEnabledProps\n\nconst OnrampWidget: FC<OnrampWidgetProps> = ({\n defaultWalletAddress,\n moonPayApiKey,\n moonpayOnUrlSignatureRequested,\n linkedWallets,\n multiWalletSupportEnabled,\n supportedWalletVMs,\n moonPayThemeId,\n moonPayThemeMode,\n token,\n setToken,\n disablePasteWalletAddressOption,\n onTokenChange,\n onConnectWallet,\n onLinkNewWallet,\n onSetPrimaryWallet,\n onAnalyticEvent: _onAnalyticEvent,\n onSuccess\n}) => {\n const onAnalyticEvent = useCallback(\n (eventName: string, data?: any) => {\n try {\n _onAnalyticEvent?.(eventName, data)\n } catch (e) {\n console.error('Error in onAnalyticEvent', eventName, data, e)\n }\n },\n [_onAnalyticEvent]\n )\n const [addressModalOpen, setAddressModalOpen] = useState(false)\n const [onrampModalOpen, setOnrampModalOpen] = useState(false)\n const { isConnected } = useAccount()\n const providerOptionsContext = useContext(ProviderOptionsContext)\n const haptic = useHapticEvent()\n const connectorKeyOverrides = providerOptionsContext.vmConnectorKeyOverrides\n\n return (\n <OnrampWidgetRenderer\n defaultWalletAddress={defaultWalletAddress}\n supportedWalletVMs={supportedWalletVMs}\n linkedWallets={linkedWallets}\n multiWalletSupportEnabled={multiWalletSupportEnabled}\n moonPayApiKey={moonPayApiKey}\n token={token}\n setToken={setToken}\n >\n {({\n displayCurrency,\n setDisplayCurrency,\n recipient,\n setRecipient,\n isRecipientLinked,\n isValidRecipient,\n amount,\n amountToToken,\n setInputValue,\n amountToTokenFormatted,\n token,\n fromToken,\n setToken,\n toChain,\n fromChain,\n toDisplayName,\n toChainWalletVMSupported,\n fiatCurrency,\n setFiatCurrency,\n minAmountCurrency,\n notEnoughFiat,\n ctaCopy,\n moonPayCurrencyCode,\n isPassthrough,\n usdRate\n }) => {\n //Reset recipient if no longer valid\n useEffect(() => {\n if (\n multiWalletSupportEnabled &&\n fromChain &&\n recipient &&\n linkedWallets &&\n !isValidRecipient\n ) {\n const supportedAddress = findSupportedWallet(\n fromChain,\n recipient,\n linkedWallets,\n connectorKeyOverrides\n )\n if (supportedAddress) {\n onSetPrimaryWallet?.(supportedAddress)\n }\n }\n\n if (\n multiWalletSupportEnabled &&\n toChain &&\n recipient &&\n linkedWallets &&\n !isValidRecipient\n ) {\n setRecipient(undefined)\n }\n }, [\n multiWalletSupportEnabled,\n fromChain?.id,\n toChain?.id,\n linkedWallets,\n onSetPrimaryWallet,\n isValidRecipient,\n connectorKeyOverrides\n ])\n\n const formattedAmount =\n amount === ''\n ? ''\n : amount.endsWith('.')\n ? new Intl.NumberFormat(undefined, {\n style: 'currency',\n currency: 'USD',\n currencyDisplay: 'narrowSymbol',\n minimumFractionDigits: 0,\n maximumFractionDigits: 0\n }).format(+amount) + '.'\n : new Intl.NumberFormat(undefined, {\n style: 'currency',\n currency: 'USD',\n currencyDisplay: 'narrowSymbol',\n minimumFractionDigits: amount.includes('.0')\n ? 1\n : amount.endsWith('0') && amount.includes('.')\n ? 2\n : 0,\n maximumFractionDigits: amount.includes('.') ? 2 : 0,\n minimumSignificantDigits: 1,\n maximumSignificantDigits: amount.length\n }).format(+amount)\n\n return (\n <div\n className=\"relay-kit-reset relay:max-w-[408px] relay:min-w-[320px] relay:w-full\"\n >\n <Flex\n direction=\"column\"\n className=\"relay:gap-2 relay:w-full relay:border-widget\"\n >\n <Flex\n direction=\"column\"\n className=\"relay:w-full relay:overflow-hidden relay:px-4 relay:pt-[40px] relay:pb-[24px] relay:rounded-widget-card relay:bg-[var(--relay-colors-widget-background)] relay:border-widget-card relay:mb-[var(--relay-spacing-widget-card-section-gutter)]\"\n >\n <Text\n style=\"subtitle2\"\n color=\"subtle\"\n className=\"relay:text-center\"\n >\n Enter an amount\n </Text>\n <AmountInput\n value={\n displayCurrency\n ? amountToToken !== ''\n ? `${amountToToken} ${token.symbol}`\n : ''\n : formattedAmount\n }\n setValue={(e) => {\n //unused\n }}\n placeholder={` 0`}\n onChange={(e) => {\n const input = e.target as any\n\n setInputValue(input.value)\n if (displayCurrency) {\n setTimeout(() => {\n const numericValue = input.value.match(/[\\d.]+/g)\n const numericValueLength =\n numericValue !== null\n ? numericValue.join('').length\n : 0\n input.setSelectionRange(\n numericValueLength,\n numericValueLength\n )\n }, 0)\n }\n }}\n onKeyDown={(e) => {\n const input = e.target as HTMLInputElement\n const cursorPosition = input.selectionStart\n\n // Prevent multiple decimals\n if (\n e.key === '.' &&\n (input.value.match(/\\./g) || []).length > 0\n ) {\n e.preventDefault() // Prevent the key press if there's already a decimal\n return\n }\n\n if (e.key === 'ArrowLeft' && cursorPosition !== null) {\n const valueBeforeCursor = input.value.substring(\n 0,\n cursorPosition\n )\n const charBeforeCursor = valueBeforeCursor.charAt(\n cursorPosition - 1\n )\n if (charBeforeCursor === '$') {\n e.preventDefault()\n }\n }\n if (e.key === 'ArrowRight' && cursorPosition !== null) {\n const valueAfterCursor = input.value.substring(\n 0,\n cursorPosition + 1\n )\n const charAfterCursor =\n valueAfterCursor.charAt(cursorPosition)\n if (charAfterCursor === ' ') {\n e.preventDefault()\n }\n }\n }}\n onMouseDown={(e) => {\n const input = e.target as HTMLInputElement\n input.style.caretColor = 'transparent'\n }}\n onMouseUp={(e) => {\n const input = e.target as HTMLInputElement\n const cursorPosition = input.selectionStart // Get the current cursor position\n if (cursorPosition !== null) {\n const valueAfterCursor = input.value.substring(\n 0,\n cursorPosition + 1\n )\n const charAfterCursor =\n valueAfterCursor.charAt(cursorPosition)\n const valueBeforeCursor = input.value.substring(\n 0,\n cursorPosition\n )\n const charBeforeCursor = valueBeforeCursor.charAt(\n cursorPosition - 1\n )\n const specialCharacterRegex = /[ a-zA-Z]/\n const alphaRegex = /[a-zA-Z]/\n if (\n charAfterCursor === '$' ||\n alphaRegex.test(charAfterCursor) ||\n specialCharacterRegex.test(charBeforeCursor)\n ) {\n e.preventDefault()\n e.stopPropagation()\n input.setSelectionRange(1, 1)\n }\n }\n input.style.caretColor = 'initial'\n }}\n className=\"relay:text-center relay:whitespace-pre\"\n inputStyle={{\n fontWeight: '700',\n fontSize: 48,\n lineHeight: '58px',\n textAlign: 'center',\n textIndent:\n amount === '' || amountToToken === ''\n ? '-36px'\n : undefined,\n whiteSpace: 'pre'\n }}\n containerClassName=\"relay:mb-2 relay:w-full\"\n />\n {notEnoughFiat ? (\n <Text color=\"red\" className=\"relay:mb-[24px] relay:text-center\">\n Minimum amount is{' '}\n {displayCurrency && minAmountCurrency\n ? `${minAmountCurrency} ${token.symbol}`\n : '$20'}\n </Text>\n ) : undefined}\n <button\n className=\"relay:gap-2 relay:cursor-pointer relay:flex relay:items-center relay:justify-center relay:mb-[16px] relay:self-center\"\n onClick={() => {\n const _displayCurrency = !displayCurrency\n setDisplayCurrency(_displayCurrency)\n if (_displayCurrency) {\n let _amountToToken = 21 / usdRate\n if (+amountToToken > _amountToToken) {\n _amountToToken = +amountToToken\n }\n setInputValue(\n formatBN(_amountToToken, 5, token.decimals, false),\n _displayCurrency\n )\n }\n }}\n >\n <Text style=\"body2\" color=\"subtle\">\n {displayCurrency\n ? formattedAmount\n : `${amountToTokenFormatted} ${token.symbol}`}\n </Text>\n <Flex\n className=\"relay:text-[color:var(--relay-colors-gray8)]\"\n >\n <FontAwesomeIcon\n className=\"relay:h-[14px]\"\n icon={faArrowUpLong}\n />\n <FontAwesomeIcon\n className=\"relay:h-[14px]\"\n icon={faArrowDownLong}\n />\n </Flex>\n </button>\n <TokenSelector\n address={recipient}\n isValidAddress={isValidRecipient}\n token={token}\n onAnalyticEvent={onAnalyticEvent}\n fromChainWalletVMSupported={false}\n supportedWalletVMs={[]}\n setToken={(token) => {\n setToken(token)\n onTokenChange?.(token)\n }}\n context=\"to\"\n trigger={\n <div\n className=\"relay:w-max relay:mx-auto relay:mb-[16px]\"\n data-testid=\"onramp-token-select-button\"\n >\n <TokenTrigger token={token} />\n </div>\n }\n />\n <Flex className=\"relay:gap-2 relay:mx-auto\">\n <Button\n color=\"white\"\n corners=\"pill\"\n size=\"none\"\n className=\"relay:h-[30px] relay:px-[14px] relay:py-[4px] relay:text-[14px]\"\n onClick={() => {\n setDisplayCurrency(false)\n setInputValue('100', false)\n }}\n >\n <Text style=\"subtitle2\">$100</Text>\n </Button>\n <Button\n color=\"white\"\n corners=\"pill\"\n size=\"none\"\n className=\"relay:h-[30px] relay:px-[14px] relay:py-[4px] relay:text-[14px]\"\n onClick={() => {\n setDisplayCurrency(false)\n setInputValue('300', false)\n }}\n >\n <Text style=\"subtitle2\">$300</Text>\n </Button>\n <Button\n color=\"white\"\n corners=\"pill\"\n size=\"none\"\n className=\"relay:h-[30px] relay:px-[14px] relay:py-[4px] relay:text-[14px]\"\n onClick={() => {\n setDisplayCurrency(false)\n setInputValue('1000', false)\n }}\n >\n <Text style=\"subtitle2\">$1,000</Text>\n </Button>\n </Flex>\n </Flex>\n </Flex>\n <Flex\n direction=\"column\"\n className=\"relay:w-full relay:overflow-hidden relay:p-4 relay:rounded-widget-card relay:bg-[var(--relay-colors-widget-background)] relay:border-widget-card relay:mb-[var(--relay-spacing-widget-card-section-gutter)]\"\n >\n <Flex justify=\"between\" align=\"center\" className=\"relay:mb-2\">\n <Text color=\"subtle\" style=\"subtitle2\">\n Recipient\n </Text>\n {multiWalletSupportEnabled === true &&\n toChainWalletVMSupported ? (\n <MultiWalletDropdown\n context=\"destination\"\n selectedWalletAddress={recipient}\n onSelect={(wallet) => setRecipient(wallet.address)}\n chain={toChain}\n onLinkNewWallet={() => {\n if (\n (!linkedWallets || linkedWallets.length === 0) &&\n toChainWalletVMSupported\n ) {\n onConnectWallet?.()\n } else {\n onLinkNewWallet?.({\n chain: toChain,\n direction: 'to'\n })?.then((wallet) => {\n onSetPrimaryWallet?.(wallet.address)\n })\n }\n }}\n setAddressModalOpen={setAddressModalOpen}\n wallets={linkedWallets!}\n onAnalyticEvent={onAnalyticEvent}\n disablePasteWalletAddressOption={\n disablePasteWalletAddressOption\n }\n testId=\"onramp-wallet-select-button\"\n />\n ) : null}\n {!multiWalletSupportEnabled || !toChainWalletVMSupported ? (\n <Button\n color={\n isValidRecipient && !isRecipientLinked\n ? 'warning'\n : 'secondary'\n }\n corners=\"pill\"\n size=\"none\"\n className=\"relay:flex relay:items-center relay:px-2 relay:py-1\"\n onClick={() => {\n setAddressModalOpen(true)\n onAnalyticEvent?.(EventNames.SWAP_ADDRESS_MODAL_CLICKED)\n }}\n >\n {isValidRecipient && !isRecipientLinked ? (\n <Box className=\"relay:text-[color:var(--relay-colors-amber11)]\">\n <FontAwesomeIcon\n icon={faClipboard}\n width={16}\n height={16}\n />\n </Box>\n ) : null}\n <Text\n style=\"subtitle2\"\n className={\n isValidRecipient && !isRecipientLinked\n ? 'relay:text-[color:var(--relay-colors-amber11)]'\n : 'relay:text-[color:var(--relay-colors-anchor-color)]'\n }\n >\n {!isValidRecipient ? `Enter Address` : toDisplayName}\n </Text>\n </Button>\n ) : null}\n </Flex>\n <Flex justify=\"between\" align=\"center\">\n <Text color=\"subtle\" style=\"subtitle2\">\n Paying with\n </Text>\n <Flex\n className=\"relay:items-center relay:gap-2 relay:ml-auto relay:mr-2 relay:text-[color:var(--relay-colors-gray9)]\"\n >\n <FontAwesomeIcon style={{ width: 16 }} icon={faCreditCard} />\n <Text style=\"subtitle2\">Card</Text>\n </Flex>\n {/* Hiding this until issues are resolved with MoonPay\n <FiatCurrencyModal\n fiatCurrency={fiatCurrency}\n setFiatCurrency={setFiatCurrency}\n moonPayApiKey={moonPayApiKey}\n /> */}\n </Flex>\n </Flex>\n <Button\n cta={true}\n className=\"relay:w-full relay:justify-center\"\n disabled={notEnoughFiat}\n onClick={() => {\n haptic('medium')\n if (!recipient && toChainWalletVMSupported) {\n if (!linkedWallets || linkedWallets.length === 0) {\n onConnectWallet?.()\n } else {\n onLinkNewWallet?.({\n chain: toChain,\n direction: 'to'\n })?.then((wallet) => {\n onSetPrimaryWallet?.(wallet.address)\n })\n }\n } else if (!recipient) {\n setAddressModalOpen(true)\n } else {\n setOnrampModalOpen(true)\n }\n }}\n >\n {ctaCopy}\n </Button>\n <CustomAddressModal\n open={addressModalOpen}\n toToken={token}\n toAddress={recipient}\n toChain={toChain}\n isConnected={\n (linkedWallets && linkedWallets.length > 0) || isConnected\n ? true\n : false\n }\n linkedWallets={linkedWallets ?? []}\n multiWalletSupportEnabled={multiWalletSupportEnabled}\n onAnalyticEvent={onAnalyticEvent}\n onOpenChange={(open) => {\n setAddressModalOpen(open)\n }}\n onConfirmed={(address) => {\n setRecipient(address)\n }}\n onClear={() => {\n setRecipient(undefined)\n }}\n />\n <OnrampModal\n open={onrampModalOpen}\n onOpenChange={setOnrampModalOpen}\n onAnalyticEvent={onAnalyticEvent}\n moonpayOnUrlSignatureRequested={moonpayOnUrlSignatureRequested}\n fromToken={fromToken}\n toToken={token}\n fromChain={fromChain}\n toChain={toChain}\n amount={amount}\n amountFormatted={formattedAmount}\n amountToTokenFormatted={amountToTokenFormatted}\n fiatCurrency={fiatCurrency}\n recipient={recipient}\n onSuccess={onSuccess}\n moonPayCurrencyCode={moonPayCurrencyCode}\n isPassthrough={isPassthrough}\n usdRate={usdRate}\n moonPayThemeId={moonPayThemeId}\n moonPayThemeMode={moonPayThemeMode}\n moonPayApiKey={moonPayApiKey}\n />\n </div>\n )\n }}\n </OnrampWidgetRenderer>\n )\n}\n\nexport default OnrampWidget\n"]}
@@ -37,7 +37,7 @@ const localStorage_js_1 = require("../../../utils/localStorage.js");
37
37
  const GasTopUpSection_js_1 = tslib_1.__importDefault(require("./GasTopUpSection.js"));
38
38
  const quote_js_1 = require("../../../utils/quote.js");
39
39
  const PriceImpact_js_1 = require("./PriceImpact.js");
40
- const SwapWidget = ({ fromToken, setFromToken, toToken, setToToken, defaultToAddress, defaultAmount, defaultTradeType, slippageTolerance, onOpenSlippageConfig, lockToToken = false, lockFromToken = false, lockChainId, singleChainMode = false, wallet, multiWalletSupportEnabled = false, linkedWallets, supportedWalletVMs, disableInputAutoFocus = false, popularChainIds, disablePasteWalletAddressOption, useSecureBaseUrl, onSetPrimaryWallet, onLinkNewWallet, onFromTokenChange, onToTokenChange, onConnectWallet, onAnalyticEvent: _onAnalyticEvent, onSwapSuccess, onSwapValidating, onSwapError }) => {
40
+ const SwapWidget = ({ fromToken, setFromToken, toToken, setToToken, defaultToAddress, defaultAmount, defaultTradeType, slippageTolerance, onOpenSlippageConfig, lockToToken = false, lockFromToken = false, lockChainId, singleChainMode = false, wallet, multiWalletSupportEnabled = false, linkedWallets, supportedWalletVMs, disableInputAutoFocus = false, popularChainIds, disablePasteWalletAddressOption, onSetPrimaryWallet, onLinkNewWallet, onFromTokenChange, onToTokenChange, onConnectWallet, onAnalyticEvent: _onAnalyticEvent, onSwapSuccess, onSwapValidating, onSwapError }) => {
41
41
  const onAnalyticEvent = (0, react_1.useCallback)((eventName, data) => {
42
42
  try {
43
43
  _onAnalyticEvent?.(eventName, data);
@@ -77,7 +77,7 @@ const SwapWidget = ({ fromToken, setFromToken, toToken, setToToken, defaultToAdd
77
77
  }
78
78
  }
79
79
  }, [fromToken, toToken]);
80
- return ((0, jsx_runtime_1.jsx)(SwapWidgetRenderer_js_1.default, { context: "Swap", transactionModalOpen: transactionModalOpen, setTransactionModalOpen: setTransactionModalOpen, depositAddressModalOpen: depositAddressModalOpen, defaultAmount: defaultAmount, defaultToAddress: defaultToAddress, defaultTradeType: defaultTradeType, toToken: toToken, setToToken: setToToken, fromToken: fromToken, setFromToken: setFromToken, slippageTolerance: slippageTolerance, wallet: wallet, linkedWallets: linkedWallets, multiWalletSupportEnabled: multiWalletSupportEnabled, onSwapError: onSwapError, onAnalyticEvent: onAnalyticEvent, supportedWalletVMs: supportedWalletVMs, useSecureBaseUrl: useSecureBaseUrl, children: ({ quote, steps, swap, setSteps, feeBreakdown, fromToken, setFromToken, toToken, setToToken, error, toDisplayName, address, recipient, customToAddress, setCustomToAddress, tradeType, setTradeType, isSameCurrencySameRecipientSwap, debouncedInputAmountValue, debouncedAmountInputControls, setAmountInputValue, amountInputValue, amountOutputValue, debouncedOutputAmountValue, debouncedAmountOutputControls, setAmountOutputValue, toBalance, toBalancePending, isLoadingToBalance, isFetchingQuote, isLoadingFromBalance, fromBalance, fromBalancePending, highRelayerServiceFee, relayerFeeProportion, hasInsufficientBalance, isInsufficientLiquidityError, isCapacityExceededError, isCouldNotExecuteError, ctaCopy, isFromNative, timeEstimate, isSvmSwap, isBvmSwap, isValidFromAddress, isValidToAddress, slippageTolerance, fromChainWalletVMSupported, toChainWalletVMSupported, isRecipientLinked, swapError, recipientWalletSupportsChain, gasTopUpEnabled, setGasTopUpEnabled, gasTopUpRequired, gasTopUpBalance, gasTopUpAmount, gasTopUpAmountUsd, linkedWallet, quoteParameters, setSwapError, invalidateBalanceQueries, invalidateQuoteQuery, quoteInProgress, setQuoteInProgress, abortController, fromTokenPriceData, toTokenPriceData, isLoadingFromTokenPrice, isLoadingToTokenPrice }) => {
80
+ return ((0, jsx_runtime_1.jsx)(SwapWidgetRenderer_js_1.default, { context: "Swap", transactionModalOpen: transactionModalOpen, setTransactionModalOpen: setTransactionModalOpen, depositAddressModalOpen: depositAddressModalOpen, defaultAmount: defaultAmount, defaultToAddress: defaultToAddress, defaultTradeType: defaultTradeType, toToken: toToken, setToToken: setToToken, fromToken: fromToken, setFromToken: setFromToken, slippageTolerance: slippageTolerance, wallet: wallet, linkedWallets: linkedWallets, multiWalletSupportEnabled: multiWalletSupportEnabled, onSwapError: onSwapError, onAnalyticEvent: onAnalyticEvent, supportedWalletVMs: supportedWalletVMs, children: ({ quote, steps, swap, setSteps, feeBreakdown, fromToken, setFromToken, toToken, setToToken, error, toDisplayName, address, recipient, customToAddress, setCustomToAddress, tradeType, setTradeType, isSameCurrencySameRecipientSwap, debouncedInputAmountValue, debouncedAmountInputControls, setAmountInputValue, amountInputValue, amountOutputValue, debouncedOutputAmountValue, debouncedAmountOutputControls, setAmountOutputValue, toBalance, toBalancePending, isLoadingToBalance, isFetchingQuote, isLoadingFromBalance, fromBalance, fromBalancePending, highRelayerServiceFee, relayerFeeProportion, hasInsufficientBalance, isInsufficientLiquidityError, isCapacityExceededError, isCouldNotExecuteError, ctaCopy, isFromNative, timeEstimate, isSvmSwap, isBvmSwap, isValidFromAddress, isValidToAddress, slippageTolerance, fromChainWalletVMSupported, toChainWalletVMSupported, isRecipientLinked, swapError, recipientWalletSupportsChain, gasTopUpEnabled, setGasTopUpEnabled, gasTopUpRequired, gasTopUpBalance, gasTopUpAmount, gasTopUpAmountUsd, linkedWallet, quoteParameters, setSwapError, invalidateBalanceQueries, invalidateQuoteQuery, quoteInProgress, setQuoteInProgress, abortController, fromTokenPriceData, toTokenPriceData, isLoadingFromTokenPrice, isLoadingToTokenPrice }) => {
81
81
  const inputAmountUsd = (0, react_1.useMemo)(() => {
82
82
  return (0, quote_js_1.calculateUsdValue)(fromTokenPriceData?.price, amountInputValue);
83
83
  }, [fromTokenPriceData, amountInputValue]);
@@ -481,9 +481,9 @@ const SwapWidget = ({ fromToken, setFromToken, toToken, setToToken, defaultToAdd
481
481
  address !== relay_sdk_1.tronDeadAddress &&
482
482
  address !== undefined, pending: fromBalancePending })) : ((0, jsx_runtime_1.jsx)(index_js_1.Flex, { className: "relay:h-[18px]" })), fromBalance &&
483
483
  (fromChain?.vmType === 'evm' ||
484
- fromChain?.vmType === 'svm') ? ((0, jsx_runtime_1.jsx)(index_js_1.Box, { className: "relay:hidden relay:sm:block", children: (0, jsx_runtime_1.jsx)(PercentageButtons_js_1.PercentageButtons, { balance: fromBalance, onPercentageClick: handleMaxAmountClicked, getFeeBufferAmount: nativeMaxAmount_js_1.getFeeBufferAmount, fromChain: fromChain, publicClient: publicClient, isFromNative: isFromNative, variant: "desktop" }) })) : null] })] }), fromBalance &&
484
+ fromChain?.vmType === 'svm') ? ((0, jsx_runtime_1.jsx)(index_js_1.Box, { className: "relay:hidden relay:sm:block", children: (0, jsx_runtime_1.jsx)(PercentageButtons_js_1.PercentageButtons, { balance: fromBalance, onPercentageClick: handleMaxAmountClicked, getFeeBufferAmount: (vmType, chainId, balance, publicClient) => (0, nativeMaxAmount_js_1.getFeeBufferAmount)(vmType, chainId, balance, publicClient, relayClient?.baseApiUrl), fromChain: fromChain, publicClient: publicClient, isFromNative: isFromNative, variant: "desktop" }) })) : null] })] }), fromBalance &&
485
485
  (fromChain?.vmType === 'evm' ||
486
- fromChain?.vmType === 'svm') ? ((0, jsx_runtime_1.jsx)(index_js_1.Box, { className: "relay:block relay:sm:hidden", children: (0, jsx_runtime_1.jsx)(PercentageButtons_js_1.PercentageButtons, { balance: fromBalance, onPercentageClick: handleMaxAmountClicked, getFeeBufferAmount: nativeMaxAmount_js_1.getFeeBufferAmount, fromChain: fromChain, publicClient: publicClient, isFromNative: isFromNative, variant: "mobile" }) })) : null] })] }), (0, jsx_runtime_1.jsx)(index_js_1.Box, { className: "relay:relative relay:my-[-13px] relay:mx-auto relay:h-[32px] relay:w-[32px]", children: hasLockedToken ||
486
+ fromChain?.vmType === 'svm') ? ((0, jsx_runtime_1.jsx)(index_js_1.Box, { className: "relay:block relay:sm:hidden", children: (0, jsx_runtime_1.jsx)(PercentageButtons_js_1.PercentageButtons, { balance: fromBalance, onPercentageClick: handleMaxAmountClicked, getFeeBufferAmount: (vmType, chainId, balance, publicClient) => (0, nativeMaxAmount_js_1.getFeeBufferAmount)(vmType, chainId, balance, publicClient, relayClient?.baseApiUrl), fromChain: fromChain, publicClient: publicClient, isFromNative: isFromNative, variant: "mobile" }) })) : null] })] }), (0, jsx_runtime_1.jsx)(index_js_1.Box, { className: "relay:relative relay:my-[-13px] relay:mx-auto relay:h-[32px] relay:w-[32px]", children: hasLockedToken ||
487
487
  ((isSvmSwap || isBvmSwap) &&
488
488
  !multiWalletSupportEnabled) ? null : ((0, jsx_runtime_1.jsx)(index_js_1.Button, { "aria-label": "Swap Tokens Direction", size: "none", color: "white", className: "relay:mt-[4px] relay:text-[color:var(--relay-colors-gray9)] relay:self-center relay:justify-center relay:w-full relay:h-full relay:z-10 relay:border-[length:var(--relay-borders-widget-swap-currency-button-border-width)] relay:border-solid relay:!border-[color:var(--relay-colors-widget-swap-currency-button-border-color)] relay:rounded-swap-btn relay:hover:text-[color:var(--relay-colors-gray11)] relay:hover:bg-[var(--relay-colors-gray-2)]", onClick: () => {
489
489
  haptic('light');