@daimo/pay 1.7.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
- import { ExternalPaymentOptions, assert, assertNotNull, debugJson, supportedChains, ethereum, readDaimoPayOrderID, getChainName, arbitrum as arbitrum$1, base as base$2, blast as blast$1, bsc as bsc$1, linea as linea$1, mantle as mantle$1, optimism as optimism$1, polygon as polygon$1, worldchain as worldchain$1, writeDaimoPayOrderID, DaimoPayOrderMode, DaimoPayOrderStatusDest, getChainExplorerTxUrl, getAddressContraction, DaimoPayIntentStatus, retryBackoff, DaimoPayOrderStatusSource, getDaimoPayOrderView } from '@daimo/pay-common';
2
+ import { ExternalPaymentOptions, assert, assertNotNull, debugJson, supportedChains, ethereum, readDaimoPayOrderID, getChainName, arbitrum as arbitrum$1, base as base$2, blast as blast$1, bsc as bsc$1, linea as linea$1, mantle as mantle$1, optimism as optimism$1, polygon as polygon$1, worldchain as worldchain$1, getAddressContraction, writeDaimoPayOrderID, DaimoPayOrderMode, DaimoPayOrderStatusDest, getChainExplorerTxUrl, DaimoPayIntentStatus, retryBackoff, DaimoPayOrderStatusSource, getDaimoPayOrderView } from '@daimo/pay-common';
3
3
  import { Buffer } from 'buffer';
4
4
  import React, { useState, useEffect, createContext, useCallback, useRef, useLayoutEffect, useMemo, createElement } from 'react';
5
5
  import styled$1, { css, keyframes, ThemeProvider } from 'styled-components';
@@ -22,7 +22,7 @@ import { WalletSignTransactionError, WalletSendTransactionError } from '@solana/
22
22
  import { normalize } from 'viem/ens';
23
23
 
24
24
  var name = "@daimo/pay";
25
- var version = "1.7.0";
25
+ var version = "1.7.1";
26
26
  var author = "Daimo";
27
27
  var homepage = "https://pay.daimo.com";
28
28
  var license = "BSD-2-Clause license";
@@ -61,7 +61,7 @@ var keywords = [
61
61
  "crypto"
62
62
  ];
63
63
  var dependencies = {
64
- "@daimo/pay-common": "1.7.0",
64
+ "@daimo/pay-common": "1.7.1",
65
65
  "@rollup/plugin-typescript": "^12.1.2",
66
66
  "@solana/wallet-adapter-base": "^0.9.23",
67
67
  "@solana/wallet-adapter-react": "^0.15.35",
@@ -7432,8 +7432,13 @@ function tokenAmountToRoundedUsd(amount, token, round = "nearest") {
7432
7432
  }
7433
7433
 
7434
7434
  /** Shows payment amount. */
7435
- const OrderHeader = ({ minified = false }) => {
7436
- const { paymentState, route } = usePayContext();
7435
+ const OrderHeader = ({ minified = false, showEth = false, showSolana = false, }) => {
7436
+ const { paymentState, route, wcWallet } = usePayContext();
7437
+ const { isConnected: isEthConnected, address, connector } = useAccount();
7438
+ const { connected: isSolanaConnected, publicKey, wallet: solanaWallet, } = useWallet$1();
7439
+ const { senderEnsName } = paymentState;
7440
+ const ethWalletDisplayName = senderEnsName ?? (address ? getAddressContraction(address) : "wallet");
7441
+ const solWalletDisplayName = getAddressContraction(publicKey?.toBase58() ?? "");
7437
7442
  const orderUsd = paymentState.daimoPayOrder?.destFinalCallTokenAmount.usd;
7438
7443
  const titleAmountContent = (() => {
7439
7444
  if (paymentState.isDepositFlow) {
@@ -7446,9 +7451,16 @@ const OrderHeader = ({ minified = false }) => {
7446
7451
  return orderUsd != null ? (jsx("span", { children: formatUsd(orderUsd, "nearest") })) : null;
7447
7452
  }
7448
7453
  })();
7454
+ const renderIcon = (icon, name, size = 32) => {
7455
+ if (!icon)
7456
+ return jsx(MetaMask, {});
7457
+ return (jsx(LogoContainer$4, { "$size": size, "$zIndex": 1, style: { borderRadius: "22.5%" }, children: typeof icon === "string" ? (jsx("img", { src: icon, alt: name || "wallet", style: { maxWidth: "100%", maxHeight: "100%" } })) : (icon) }));
7458
+ };
7459
+ let walletIcon = renderIcon(connector?.icon || wcWallet?.icon, wcWallet?.name);
7460
+ let solanaIcon = renderIcon(solanaWallet?.adapter.icon || jsx(Solana, {}), solanaWallet?.adapter.name);
7449
7461
  if (minified) {
7450
7462
  if (titleAmountContent != null) {
7451
- return (jsxs(MinifiedContainer, { children: [jsx(MinifiedTitleAmount, { children: titleAmountContent }), jsx(CoinLogos, { "$size": 32 })] }));
7463
+ return (jsxs(MinifiedContainer, { children: [jsx(MinifiedTitleAmount, { children: titleAmountContent }), showEth && isEthConnected && (jsx(Fragment, { children: jsxs(SubtitleContainer, { children: [jsx(Subtitle, { children: ethWalletDisplayName }), walletIcon] }) })), showSolana && isSolanaConnected && (jsx(Fragment, { children: jsxs(SubtitleContainer, { children: [jsx(Subtitle, { children: solWalletDisplayName }), solanaIcon] }) })), !showEth && !showSolana && (jsx(Fragment, { children: jsx(CoinLogos, { "$size": 32 }) }))] }));
7452
7464
  }
7453
7465
  else {
7454
7466
  return (jsxs(MinifiedContainer, { children: [jsx(CoinLogos, {}), jsx(Subtitle, { children: "1000+ tokens accepted" })] }));
@@ -7547,6 +7559,12 @@ const Logos = styled(motion.div) `
7547
7559
  align-items: center;
7548
7560
  justify-content: center;
7549
7561
  `;
7562
+ const SubtitleContainer = styled.div `
7563
+ display: flex;
7564
+ align-items: center;
7565
+ justify-content: flex-end;
7566
+ gap: 8px;
7567
+ `;
7550
7568
 
7551
7569
  const Wallets = () => {
7552
7570
  const context = usePayContext();
@@ -10318,7 +10336,7 @@ const OptionIcon = styled(motion.div) `
10318
10336
  border-radius: 0;
10319
10337
  }
10320
10338
  `;
10321
- const OptionsContainer = styled.div `
10339
+ const OptionsContainer$1 = styled.div `
10322
10340
  transition: opacity 300ms ease;
10323
10341
  display: flex;
10324
10342
  flex-direction: column;
@@ -10331,7 +10349,7 @@ const OptionsContainer = styled.div `
10331
10349
  `}
10332
10350
  `;
10333
10351
 
10334
- const OptionsList = ({ options, isLoading, requiredSkeletons, shortScroll, orDivider = false, }) => {
10352
+ const OptionsList = ({ options, isLoading, requiredSkeletons, scrollHeight = 300, orDivider = false, }) => {
10335
10353
  const { triggerResize, log } = usePayContext();
10336
10354
  const optionsLength = options.length;
10337
10355
  useEffect(() => {
@@ -10344,10 +10362,10 @@ const OptionsList = ({ options, isLoading, requiredSkeletons, shortScroll, orDiv
10344
10362
  const skeletonCount = requiredSkeletons
10345
10363
  ? Math.max(requiredSkeletons - optionsLength, 0)
10346
10364
  : 0;
10347
- return (jsxs(OptionsContainer, { "$totalResults": options.length, children: [options.map((option) => (jsx(OptionItem, { option: option }, option.id))), isLoading &&
10365
+ return (jsxs(OptionsContainer$1, { "$totalResults": options.length, children: [options.map((option) => (jsx(OptionItem, { option: option }, option.id))), isLoading &&
10348
10366
  Array.from({ length: skeletonCount }).map((_, index) => (jsx(SkeletonOptionItem, {}, index)))] }));
10349
10367
  }
10350
- return (jsxs(Fragment, { children: [jsx(ScrollArea, { mobileDirection: "vertical", height: shortScroll ? 225 : 300, hideBottomLine: orDivider, totalItems: options.length, children: jsx(OptionsContainer, { "$totalResults": options.length, children: options.map((option) => (jsx(OptionItem, { option: option }, option.id))) }) }), orDivider && jsx(OrDivider, {})] }));
10368
+ return (jsxs(Fragment, { children: [jsx(ScrollArea, { mobileDirection: "vertical", height: scrollHeight, hideBottomLine: orDivider, totalItems: options.length, children: jsx(OptionsContainer$1, { "$totalResults": options.length, children: options.map((option) => (jsx(OptionItem, { option: option }, option.id))) }) }), orDivider && jsx(OrDivider, {})] }));
10351
10369
  };
10352
10370
  const SkeletonOptionItem = () => {
10353
10371
  return (jsxs(OptionButton, { type: "button", children: [jsx(SkeletonIcon, {}), jsx(SkeletonLabel, {})] }));
@@ -10426,6 +10444,84 @@ const IconStackItem = styled(motion.div) `
10426
10444
  border-radius: 22.5%;
10427
10445
  `;
10428
10446
 
10447
+ const OptionsContainer = styled$1.div `
10448
+ width: 100%;
10449
+ margin-top: 1rem;
10450
+ `;
10451
+ function SelectAnotherMethodButton() {
10452
+ const { paymentState, setRoute } = usePayContext();
10453
+ const { externalPaymentOptions, daimoPayOrder } = paymentState;
10454
+ const { connector } = useAccount();
10455
+ const { disconnectAsync } = useDisconnect();
10456
+ const paymentOptions = daimoPayOrder?.metadata.payer?.paymentOptions;
10457
+ const allPaymentOptions = [
10458
+ ...externalPaymentOptions.options.map((option) => option.id),
10459
+ ...(paymentOptions ?? []),
10460
+ ].flat();
10461
+ const includeSolana = paymentOptions == null ||
10462
+ paymentOptions.includes(ExternalPaymentOptions.Solana);
10463
+ // Deposit address options, e.g. Bitcoin, Tron, Zcash, etc.
10464
+ // Include by default if paymentOptions not provided
10465
+ const includeDepositAddressOption = paymentOptions == null ||
10466
+ paymentOptions.includes(ExternalPaymentOptions.ExternalChains);
10467
+ const selectMethodOption = {
10468
+ id: "select-method",
10469
+ title: `Pay with another method`,
10470
+ icons: getBestPaymentMethodIcons(),
10471
+ onClick: () => {
10472
+ setRoute(ROUTES.SELECT_METHOD);
10473
+ },
10474
+ };
10475
+ const selectWalletOption = {
10476
+ id: "select-wallet",
10477
+ title: "Pay with another wallet",
10478
+ icons: getBestUnconnectedWalletIcons(connector),
10479
+ onClick: async () => {
10480
+ await disconnectAsync();
10481
+ setRoute(ROUTES.CONNECTORS);
10482
+ },
10483
+ };
10484
+ function getBestUnconnectedWalletIcons(connector) {
10485
+ const icons = [];
10486
+ const strippedId = connector?.id.toLowerCase(); // some connector ids can have weird casing and or suffixes and prefixes
10487
+ const [isMetaMask, isRainbow, isCoinbase] = [
10488
+ strippedId?.includes("metamask"),
10489
+ strippedId?.includes("rainbow"),
10490
+ strippedId?.includes("coinbase"),
10491
+ ];
10492
+ if (!isRainbow)
10493
+ icons.push(jsx(Rainbow, {}));
10494
+ if (!isMetaMask)
10495
+ icons.push(jsx(MetaMask, {}));
10496
+ if (!isCoinbase)
10497
+ icons.push(jsx(Coinbase, {}));
10498
+ if (icons.length < 3)
10499
+ icons.push(jsx(Rabby, {}));
10500
+ return icons;
10501
+ }
10502
+ function getBestPaymentMethodIcons() {
10503
+ let icons = externalPaymentOptions.options
10504
+ .filter((option) => option.id !== ExternalPaymentOptions.Daimo)
10505
+ .map((option) => (jsx("div", { style: { borderRadius: "22.5%", overflow: "hidden" }, children: jsx("img", { src: option.logoURI, alt: "" }) }, option.id)));
10506
+ if (icons.length < 3) {
10507
+ const additionalIcons = [];
10508
+ if (includeSolana)
10509
+ additionalIcons.push(jsx(Solana, {}));
10510
+ if (includeDepositAddressOption && additionalIcons.length < 3)
10511
+ additionalIcons.push(jsx(Bitcoin, {}));
10512
+ if (includeDepositAddressOption && additionalIcons.length < 3)
10513
+ additionalIcons.push(jsx(Tron, {}));
10514
+ if (additionalIcons.length < 3)
10515
+ additionalIcons.push(...getBestUnconnectedWalletIcons(connector));
10516
+ icons = [...icons, ...additionalIcons.slice(0, 3 - icons.length)];
10517
+ }
10518
+ return icons;
10519
+ }
10520
+ return (jsx(OptionsContainer, { children: jsx(OptionsList, { options: allPaymentOptions.length > 0
10521
+ ? [selectMethodOption]
10522
+ : [selectWalletOption] }) }));
10523
+ }
10524
+
10429
10525
  const SelectDepositAddressChain = () => {
10430
10526
  const { setRoute, paymentState } = usePayContext();
10431
10527
  const { isDepositFlow, setSelectedDepositAddressOption, depositAddressOptions, } = paymentState;
@@ -10436,7 +10532,7 @@ const SelectDepositAddressChain = () => {
10436
10532
  justifyContent: "center",
10437
10533
  paddingTop: 16,
10438
10534
  paddingBottom: 16,
10439
- }, children: [jsx(ModalH1, { children: "Chains unavailable." }), jsx(Button, { onClick: () => setRoute(ROUTES.SELECT_METHOD), children: "Select Another Method" })] })), jsx(OptionsList, { requiredSkeletons: 4, isLoading: depositAddressOptions.loading, options: depositAddressOptions.options?.map((option) => {
10535
+ }, children: [jsx(ModalH1, { children: "Chains unavailable." }), jsx(SelectAnotherMethodButton, {})] })), jsx(OptionsList, { requiredSkeletons: 4, isLoading: depositAddressOptions.loading, options: depositAddressOptions.options?.map((option) => {
10440
10536
  return {
10441
10537
  id: option.id,
10442
10538
  title: option.id,
@@ -10696,80 +10792,6 @@ function getDepositAddressOption(depositAddressOptions) {
10696
10792
  };
10697
10793
  }
10698
10794
 
10699
- function SelectAnotherMethodButton() {
10700
- const { paymentState, setRoute } = usePayContext();
10701
- const { externalPaymentOptions, daimoPayOrder } = paymentState;
10702
- const { connector } = useAccount();
10703
- const { disconnectAsync } = useDisconnect();
10704
- const paymentOptions = daimoPayOrder?.metadata.payer?.paymentOptions;
10705
- const allPaymentOptions = [
10706
- ...externalPaymentOptions.options.map((option) => option.id),
10707
- ...(paymentOptions ?? []),
10708
- ].flat();
10709
- const includeSolana = paymentOptions == null ||
10710
- paymentOptions.includes(ExternalPaymentOptions.Solana);
10711
- // Deposit address options, e.g. Bitcoin, Tron, Zcash, etc.
10712
- // Include by default if paymentOptions not provided
10713
- const includeDepositAddressOption = paymentOptions == null ||
10714
- paymentOptions.includes(ExternalPaymentOptions.ExternalChains);
10715
- const selectMethodOption = {
10716
- id: "select-method",
10717
- title: `Pay with another method`,
10718
- icons: getBestPaymentMethodIcons(),
10719
- onClick: () => {
10720
- setRoute(ROUTES.SELECT_METHOD);
10721
- },
10722
- };
10723
- const selectWalletOption = {
10724
- id: "select-wallet",
10725
- title: "Pay with another wallet",
10726
- icons: getBestUnconnectedWalletIcons(connector),
10727
- onClick: async () => {
10728
- await disconnectAsync();
10729
- setRoute(ROUTES.CONNECTORS);
10730
- },
10731
- };
10732
- function getBestUnconnectedWalletIcons(connector) {
10733
- const icons = [];
10734
- const strippedId = connector?.id.toLowerCase(); // some connector ids can have weird casing and or suffixes and prefixes
10735
- const [isMetaMask, isRainbow, isCoinbase] = [
10736
- strippedId?.includes("metamask"),
10737
- strippedId?.includes("rainbow"),
10738
- strippedId?.includes("coinbase"),
10739
- ];
10740
- if (!isRainbow)
10741
- icons.push(jsx(Rainbow, {}));
10742
- if (!isMetaMask)
10743
- icons.push(jsx(MetaMask, {}));
10744
- if (!isCoinbase)
10745
- icons.push(jsx(Coinbase, {}));
10746
- if (icons.length < 3)
10747
- icons.push(jsx(Rabby, {}));
10748
- return icons;
10749
- }
10750
- function getBestPaymentMethodIcons() {
10751
- let icons = externalPaymentOptions.options
10752
- .filter((option) => option.id !== ExternalPaymentOptions.Daimo)
10753
- .map((option) => (jsx("div", { style: { borderRadius: "22.5%", overflow: "hidden" }, children: jsx("img", { src: option.logoURI, alt: "" }) }, option.id)));
10754
- if (icons.length < 3) {
10755
- const additionalIcons = [];
10756
- if (includeSolana)
10757
- additionalIcons.push(jsx(Solana, {}));
10758
- if (includeDepositAddressOption && additionalIcons.length < 3)
10759
- additionalIcons.push(jsx(Bitcoin, {}));
10760
- if (includeDepositAddressOption && additionalIcons.length < 3)
10761
- additionalIcons.push(jsx(Tron, {}));
10762
- if (additionalIcons.length < 3)
10763
- additionalIcons.push(...getBestUnconnectedWalletIcons(connector));
10764
- icons = [...icons, ...additionalIcons.slice(0, 3 - icons.length)];
10765
- }
10766
- return icons;
10767
- }
10768
- return (jsx(OptionsList, { options: allPaymentOptions.length > 0
10769
- ? [selectMethodOption]
10770
- : [selectWalletOption] }));
10771
- }
10772
-
10773
10795
  const TokenChainLogo = ({ token }) => {
10774
10796
  return (jsxs(TokenChainContainer, { children: [jsx("img", { src: token.logoURI, alt: token.symbol, style: { borderRadius: 9999 } }), jsx(ChainContainer$1, { children: chainToLogo[token.chainId] })] }));
10775
10797
  };
@@ -10836,13 +10858,13 @@ function SelectToken() {
10836
10858
  disabled,
10837
10859
  };
10838
10860
  }) ?? [];
10839
- return (jsxs(PageContent, { children: [jsx(OrderHeader, { minified: true }), !walletPaymentOptions.isLoading && optionsList.length === 0 && (jsxs(ModalContent, { style: {
10861
+ return (jsxs(PageContent, { children: [jsx(OrderHeader, { minified: true, showEth: true }), !walletPaymentOptions.isLoading && optionsList.length === 0 && (jsxs(ModalContent, { style: {
10840
10862
  display: "flex",
10841
10863
  alignItems: "center",
10842
10864
  justifyContent: "center",
10843
10865
  paddingTop: 16,
10844
10866
  paddingBottom: 16,
10845
- }, children: [jsx(ModalH1, { children: "Insufficient balance." }), jsx("div", { className: "w-full mt-4", children: jsx(SelectAnotherMethodButton, {}) })] })), jsx(OptionsList, { requiredSkeletons: 4, isLoading: walletPaymentOptions.isLoading, options: optionsList, shortScroll: isMobile, orDivider: optionsList.length != 0 }), optionsList.length != 0 && (jsx("div", { className: "mt-2", children: jsx(SelectAnotherMethodButton, {}) }))] }));
10867
+ }, children: [jsx(ModalH1, { children: "Insufficient balance." }), jsx(SelectAnotherMethodButton, {})] })), jsx(OptionsList, { requiredSkeletons: 4, isLoading: walletPaymentOptions.isLoading, options: optionsList, scrollHeight: isMobile ? 225 : 300, orDivider: optionsList.length != 0 }), optionsList.length != 0 && jsx(SelectAnotherMethodButton, {})] }));
10846
10868
  }
10847
10869
  function getDaimoTokenKey(token) {
10848
10870
  return `${token.chainId}-${token.token}`;
@@ -10949,7 +10971,7 @@ const ConnectSolana = () => {
10949
10971
  paddingTop: 16,
10950
10972
  paddingBottom: 16,
10951
10973
  gap: 16,
10952
- }, children: [jsx(ModalH1, { children: "No Solana wallets detected." }), jsx(Button, { onClick: () => setRoute(ROUTES.SELECT_METHOD, { event: "click-select-another" }), children: "Select Another Method" })] })), isMobile() &&
10974
+ }, children: [jsx(ModalH1, { children: "No Solana wallets detected." }), jsx(SelectAnotherMethodButton, {})] })), isMobile() &&
10953
10975
  (solanaWallets.wallets.length === 0 ||
10954
10976
  (solanaWallets.wallets.length > 0 &&
10955
10977
  solanaWallets.wallets[0].adapter.name ===
@@ -11004,11 +11026,7 @@ const PayWithSolanaToken = () => {
11004
11026
  useEffect(() => {
11005
11027
  triggerResize();
11006
11028
  }, [payState]);
11007
- return (jsxs(PageContent, { children: [selectedSolanaTokenOption && (jsx(TokenLogoSpinner, { token: selectedSolanaTokenOption.required.token })), jsxs(ModalContent, { style: { paddingBottom: 0 }, children: [jsx(ModalH1, { children: payState }), selectedSolanaTokenOption && (jsx(PaymentBreakdown, { paymentOption: selectedSolanaTokenOption })), payState === PayState.RequestCancelled && (jsx(Button, { onClick: handleTransfer, children: "Retry Payment" })), payState === PayState.RequestFailed && (jsx(Button, { onClick: () => {
11008
- assert(payParams != null, "[PAY SOLANA] payParams cannot be null in deposit flow");
11009
- generatePreviewOrder(payParams);
11010
- setRoute(ROUTES.SELECT_METHOD, { event: "click-select-another" });
11011
- }, children: "Select Another Method" }))] })] }));
11029
+ return (jsxs(PageContent, { children: [selectedSolanaTokenOption && (jsx(TokenLogoSpinner, { token: selectedSolanaTokenOption.required.token })), jsxs(ModalContent, { style: { paddingBottom: 0 }, children: [jsx(ModalH1, { children: payState }), selectedSolanaTokenOption && (jsx(PaymentBreakdown, { paymentOption: selectedSolanaTokenOption })), payState === PayState.RequestCancelled && (jsx(Button, { onClick: handleTransfer, children: "Retry Payment" })), payState === PayState.RequestFailed && jsx(SelectAnotherMethodButton, {})] })] }));
11012
11030
  };
11013
11031
 
11014
11032
  const SelectSolanaAmount = () => {
@@ -11059,13 +11077,13 @@ const SelectSolanaToken = () => {
11059
11077
  disabled,
11060
11078
  };
11061
11079
  }) ?? [];
11062
- return (jsxs(PageContent, { children: [jsx(OrderHeader, { minified: true }), !solanaPaymentOptions.isLoading && optionsList.length === 0 && (jsxs(ModalContent, { style: {
11080
+ return (jsxs(PageContent, { children: [jsx(OrderHeader, { minified: true, showSolana: true }), !solanaPaymentOptions.isLoading && optionsList.length === 0 && (jsxs(ModalContent, { style: {
11063
11081
  display: "flex",
11064
11082
  alignItems: "center",
11065
11083
  justifyContent: "center",
11066
11084
  paddingTop: 16,
11067
11085
  paddingBottom: 16,
11068
- }, children: [jsx(ModalH1, { children: "Insufficient balance." }), jsx(SelectAnotherMethodButton, {})] })), jsx(OptionsList, { requiredSkeletons: 4, isLoading: solanaPaymentOptions.isLoading, options: optionsList, orDivider: optionsList.length != 0 }), optionsList.length != 0 && (jsx("div", { className: "mt-2", children: jsx(SelectAnotherMethodButton, {}) }))] }));
11086
+ }, children: [jsx(ModalH1, { children: "Insufficient balance." }), jsx(SelectAnotherMethodButton, {})] })), jsx(OptionsList, { requiredSkeletons: 4, isLoading: solanaPaymentOptions.isLoading, options: optionsList, orDivider: optionsList.length != 0 }), optionsList.length != 0 && jsx(SelectAnotherMethodButton, {})] }));
11069
11087
  };
11070
11088
 
11071
11089
  const WaitingDepositAddress = () => {
@@ -11103,7 +11121,7 @@ const WaitingDepositAddress = () => {
11103
11121
  useEffect(() => {
11104
11122
  triggerResize();
11105
11123
  }, [details]);
11106
- return (jsx(PageContent, { children: failed ? (jsxs(ModalContent, { style: { marginLeft: 24, marginRight: 24 }, children: [jsxs(ModalH1, { children: [selectedDepositAddressOption?.id, " unavailable"] }), jsxs(ModalBody, { children: ["We're unable to process ", selectedDepositAddressOption?.id, " payments at this time. Please select another payment method."] }), jsx(Button, { onClick: () => setRoute(ROUTES.SELECT_METHOD, { event: "click-select-another" }), children: "Select Another Method" })] })) : (jsxs(ModalContent, { children: [jsx(CustomQRCode, { value: details?.uri, image: jsx("img", { src: selectedDepositAddressOption?.logoURI, width: "100%", height: "100%" }), tooltipMessage: jsxs(Fragment, { children: [jsx(ScanIconWithLogos, { logo: jsx("img", { src: selectedDepositAddressOption?.logoURI }) }), jsxs("span", { children: ["Use a ", selectedDepositAddressOption?.id, " wallet to scan"] })] }) }), details && (jsxs(Fragment, { children: [jsx(OrDivider, {}), jsxs(ModalBody, { children: ["Send exactly ", details.amount, " ", details.suffix, " to", " ", getAddressContraction(details.address), " and return to this page. Confirmation should appear in a few minutes."] }), jsx(CopyToClipboard, { variant: "button", string: details.address, children: "Copy Address" }), jsx(CopyToClipboard, { variant: "left", string: details.amount, children: "Copy Amount" })] }))] })) }));
11124
+ return (jsx(PageContent, { children: failed ? (jsxs(ModalContent, { style: { marginLeft: 24, marginRight: 24 }, children: [jsxs(ModalH1, { children: [selectedDepositAddressOption?.id, " unavailable"] }), jsxs(ModalBody, { children: ["We're unable to process ", selectedDepositAddressOption?.id, " payments at this time. Please select another payment method."] }), jsx(SelectAnotherMethodButton, {})] })) : (jsxs(ModalContent, { children: [jsx(CustomQRCode, { value: details?.uri, image: jsx("img", { src: selectedDepositAddressOption?.logoURI, width: "100%", height: "100%" }), tooltipMessage: jsxs(Fragment, { children: [jsx(ScanIconWithLogos, { logo: jsx("img", { src: selectedDepositAddressOption?.logoURI }) }), jsxs("span", { children: ["Use a ", selectedDepositAddressOption?.id, " wallet to scan"] })] }) }), details && (jsxs(Fragment, { children: [jsx(OrDivider, {}), jsxs(ModalBody, { children: ["Send exactly ", details.amount, " ", details.suffix, " to", " ", getAddressContraction(details.address), " and return to this page. Confirmation should appear in a few minutes."] }), jsx(CopyToClipboard, { variant: "button", string: details.address, children: "Copy Address" }), jsx(CopyToClipboard, { variant: "left", string: details.amount, children: "Copy Amount" })] }))] })) }));
11107
11125
  };
11108
11126
 
11109
11127
  const WaitingExternal = () => {
@@ -11312,9 +11330,6 @@ const DaimoPayModal = ({ mode = "auto", theme = "auto", customTheme = customThem
11312
11330
  !isEthConnected &&
11313
11331
  context.wcWallet === undefined &&
11314
11332
  includeSolana) {
11315
- console.log("solana connected on open");
11316
- console.log("isEthConnected ", isEthConnected);
11317
- console.log("context.wcWallet ", context.wcWallet);
11318
11333
  if (context.route === ROUTES.SELECT_METHOD) {
11319
11334
  context.setRoute(ROUTES.SOLANA_SELECT_TOKEN, {
11320
11335
  event: "solana_connected_on_open",