thirdweb 5.87.4 → 5.88.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/dist/cjs/client/client.js +2 -1
  2. package/dist/cjs/client/client.js.map +1 -1
  3. package/dist/cjs/contract/deployment/zksync/zkDeployContract.js +4 -2
  4. package/dist/cjs/contract/deployment/zksync/zkDeployContract.js.map +1 -1
  5. package/dist/cjs/pay/buyWithCrypto/getQuote.js +1 -24
  6. package/dist/cjs/pay/buyWithCrypto/getQuote.js.map +1 -1
  7. package/dist/cjs/pay/buyWithCrypto/getTransfer.js +1 -13
  8. package/dist/cjs/pay/buyWithCrypto/getTransfer.js.map +1 -1
  9. package/dist/cjs/pay/buyWithFiat/getQuote.js.map +1 -1
  10. package/dist/cjs/pay/utils/commonTypes.js +2 -0
  11. package/dist/cjs/pay/utils/commonTypes.js.map +1 -1
  12. package/dist/cjs/react/core/utils/storage.js +2 -1
  13. package/dist/cjs/react/core/utils/storage.js.map +1 -1
  14. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +50 -200
  15. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  16. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.js +111 -0
  17. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.js.map +1 -0
  18. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js +30 -2
  19. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js.map +1 -1
  20. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/Providers.js +24 -0
  21. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/Providers.js.map +1 -0
  22. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/BuyTokenInput.js +2 -1
  23. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/BuyTokenInput.js.map +1 -1
  24. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +18 -6
  25. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
  26. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/FiatValue.js +37 -0
  27. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/FiatValue.js.map +1 -0
  28. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js +1 -1
  29. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js.map +1 -1
  30. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapScreenContent.js +165 -0
  31. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/SwapScreenContent.js.map +1 -0
  32. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +33 -6
  33. package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
  34. package/dist/cjs/react/web/ui/ConnectWallet/screens/nativeToken.js +8 -0
  35. package/dist/cjs/react/web/ui/ConnectWallet/screens/nativeToken.js.map +1 -1
  36. package/dist/cjs/react/web/utils/errors.js +16 -0
  37. package/dist/cjs/react/web/utils/errors.js.map +1 -0
  38. package/dist/cjs/version.js +1 -1
  39. package/dist/cjs/wallets/smart/index.js +27 -0
  40. package/dist/cjs/wallets/smart/index.js.map +1 -1
  41. package/dist/cjs/wallets/smart/types.js.map +1 -1
  42. package/dist/esm/client/client.js +2 -1
  43. package/dist/esm/client/client.js.map +1 -1
  44. package/dist/esm/contract/deployment/zksync/zkDeployContract.js +4 -2
  45. package/dist/esm/contract/deployment/zksync/zkDeployContract.js.map +1 -1
  46. package/dist/esm/pay/buyWithCrypto/getQuote.js +1 -24
  47. package/dist/esm/pay/buyWithCrypto/getQuote.js.map +1 -1
  48. package/dist/esm/pay/buyWithCrypto/getTransfer.js +1 -13
  49. package/dist/esm/pay/buyWithCrypto/getTransfer.js.map +1 -1
  50. package/dist/esm/pay/buyWithFiat/getQuote.js.map +1 -1
  51. package/dist/esm/pay/utils/commonTypes.js +1 -1
  52. package/dist/esm/pay/utils/commonTypes.js.map +1 -1
  53. package/dist/esm/react/core/utils/storage.js +1 -0
  54. package/dist/esm/react/core/utils/storage.js.map +1 -1
  55. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +50 -200
  56. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
  57. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.js +108 -0
  58. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.js.map +1 -0
  59. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js +30 -2
  60. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js.map +1 -1
  61. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/Providers.js +21 -0
  62. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/Providers.js.map +1 -0
  63. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/BuyTokenInput.js +2 -1
  64. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/BuyTokenInput.js.map +1 -1
  65. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js +18 -6
  66. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.js.map +1 -1
  67. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/FiatValue.js +34 -0
  68. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/FiatValue.js.map +1 -0
  69. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js +1 -1
  70. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.js.map +1 -1
  71. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapScreenContent.js +162 -0
  72. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/SwapScreenContent.js.map +1 -0
  73. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js +33 -6
  74. package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.js.map +1 -1
  75. package/dist/esm/react/web/ui/ConnectWallet/screens/nativeToken.js +7 -0
  76. package/dist/esm/react/web/ui/ConnectWallet/screens/nativeToken.js.map +1 -1
  77. package/dist/esm/react/web/utils/errors.js +12 -0
  78. package/dist/esm/react/web/utils/errors.js.map +1 -0
  79. package/dist/esm/version.js +1 -1
  80. package/dist/esm/wallets/smart/index.js +27 -0
  81. package/dist/esm/wallets/smart/index.js.map +1 -1
  82. package/dist/esm/wallets/smart/types.js.map +1 -1
  83. package/dist/types/client/client.d.ts.map +1 -1
  84. package/dist/types/contract/deployment/zksync/zkDeployContract.d.ts.map +1 -1
  85. package/dist/types/pay/buyWithCrypto/getQuote.d.ts +2 -2
  86. package/dist/types/pay/buyWithCrypto/getQuote.d.ts.map +1 -1
  87. package/dist/types/pay/buyWithCrypto/getTransfer.d.ts +2 -2
  88. package/dist/types/pay/buyWithCrypto/getTransfer.d.ts.map +1 -1
  89. package/dist/types/pay/buyWithFiat/getQuote.d.ts +4 -0
  90. package/dist/types/pay/buyWithFiat/getQuote.d.ts.map +1 -1
  91. package/dist/types/pay/utils/commonTypes.d.ts +2 -1
  92. package/dist/types/pay/utils/commonTypes.d.ts.map +1 -1
  93. package/dist/types/react/core/utils/storage.d.ts +1 -0
  94. package/dist/types/react/core/utils/storage.d.ts.map +1 -1
  95. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.d.ts.map +1 -1
  96. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.d.ts +25 -0
  97. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.d.ts.map +1 -0
  98. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.d.ts.map +1 -1
  99. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/Providers.d.ts +9 -0
  100. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/Providers.d.ts.map +1 -0
  101. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts +1 -0
  102. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts.map +1 -1
  103. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/BuyTokenInput.d.ts.map +1 -1
  104. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts +1 -0
  105. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.d.ts.map +1 -1
  106. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/FiatValue.d.ts +11 -0
  107. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/FiatValue.d.ts.map +1 -0
  108. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.d.ts +1 -0
  109. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.d.ts.map +1 -1
  110. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapScreenContent.d.ts +31 -0
  111. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/SwapScreenContent.d.ts.map +1 -0
  112. package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.d.ts.map +1 -1
  113. package/dist/types/react/web/ui/ConnectWallet/screens/nativeToken.d.ts +2 -0
  114. package/dist/types/react/web/ui/ConnectWallet/screens/nativeToken.d.ts.map +1 -1
  115. package/dist/types/react/web/ui/components/text.d.ts +1 -1
  116. package/dist/types/react/web/ui/components/text.d.ts.map +1 -1
  117. package/dist/types/react/web/utils/errors.d.ts +14 -0
  118. package/dist/types/react/web/utils/errors.d.ts.map +1 -0
  119. package/dist/types/version.d.ts +1 -1
  120. package/dist/types/wallets/smart/index.d.ts.map +1 -1
  121. package/dist/types/wallets/smart/types.d.ts +5 -0
  122. package/dist/types/wallets/smart/types.d.ts.map +1 -1
  123. package/package.json +1 -1
  124. package/src/client/client.test.ts +2 -2
  125. package/src/client/client.ts +2 -1
  126. package/src/contract/deployment/zksync/zkDeployContract.ts +5 -2
  127. package/src/pay/buyWithCrypto/getQuote.ts +2 -27
  128. package/src/pay/buyWithCrypto/getTransfer.ts +2 -14
  129. package/src/pay/buyWithFiat/getQuote.ts +5 -0
  130. package/src/pay/utils/commonTypes.ts +3 -1
  131. package/src/react/core/utils/storage.ts +1 -0
  132. package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +70 -531
  133. package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatScreenContent.tsx +307 -0
  134. package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.tsx +33 -1
  135. package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/Providers.tsx +57 -0
  136. package/src/react/web/ui/ConnectWallet/screens/Buy/main/types.ts +1 -0
  137. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/BuyTokenInput.tsx +12 -2
  138. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx +21 -6
  139. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/FiatValue.tsx +51 -0
  140. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.tsx +2 -0
  141. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapScreenContent.tsx +353 -0
  142. package/src/react/web/ui/ConnectWallet/screens/Buy/swap/TransferConfirmationScreen.tsx +43 -6
  143. package/src/react/web/ui/ConnectWallet/screens/nativeToken.ts +8 -0
  144. package/src/react/web/ui/components/text.tsx +1 -1
  145. package/src/react/web/utils/errors.ts +22 -0
  146. package/src/version.ts +1 -1
  147. package/src/wallets/smart/index.ts +28 -0
  148. package/src/wallets/smart/smart-wallet-integration.test.ts +25 -0
  149. package/src/wallets/smart/types.ts +5 -0
@@ -1,6 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useQuery } from "@tanstack/react-query";
3
3
  import { useEffect, useState } from "react";
4
+ import { getCachedChain } from "../../../../../../../chains/utils.js";
5
+ import { getContract } from "../../../../../../../contract/contract.js";
6
+ import { allowance } from "../../../../../../../extensions/erc20/__generated__/IERC20/read/allowance.js";
4
7
  import { getPostOnRampQuote } from "../../../../../../../pay/buyWithFiat/getPostOnRampQuote.js";
5
8
  import { iconSize } from "../../../../../../core/design-system/index.js";
6
9
  import { Spacer } from "../../../../components/Spacer.js";
@@ -24,16 +27,41 @@ export function PostOnRampSwap(props) {
24
27
  enabled: !lockedOnRampQuote,
25
28
  refetchOnWindowFocus: false,
26
29
  });
30
+ const allowanceQuery = useQuery({
31
+ queryKey: [
32
+ "allowance",
33
+ props.payer.account.address,
34
+ postOnRampQuoteQuery.data?.approvalData,
35
+ ],
36
+ queryFn: () => {
37
+ if (!postOnRampQuoteQuery.data?.approvalData) {
38
+ return null;
39
+ }
40
+ return allowance({
41
+ contract: getContract({
42
+ client: props.client,
43
+ address: postOnRampQuoteQuery.data.swapDetails.fromToken.tokenAddress,
44
+ chain: getCachedChain(postOnRampQuoteQuery.data.swapDetails.fromToken.chainId),
45
+ }),
46
+ spender: postOnRampQuoteQuery.data.approvalData.spenderAddress,
47
+ owner: props.payer.account.address,
48
+ });
49
+ },
50
+ enabled: !!postOnRampQuoteQuery.data?.approvalData,
51
+ refetchOnMount: true,
52
+ });
27
53
  useEffect(() => {
28
54
  if (postOnRampQuoteQuery.data &&
29
55
  !lockedOnRampQuote &&
30
- !postOnRampQuoteQuery.isRefetching) {
56
+ !postOnRampQuoteQuery.isRefetching &&
57
+ !allowanceQuery.isLoading) {
31
58
  setLockedOnRampQuote(postOnRampQuoteQuery.data);
32
59
  }
33
60
  }, [
34
61
  postOnRampQuoteQuery.data,
35
62
  lockedOnRampQuote,
36
63
  postOnRampQuoteQuery.isRefetching,
64
+ allowanceQuery.isLoading,
37
65
  ]);
38
66
  if (postOnRampQuoteQuery.isError) {
39
67
  return (_jsxs(Container, { fullHeight: true, children: [_jsx(Container, { p: "lg", children: _jsx(ModalHeader, { title: props.title, onBack: props.onBack }) }), _jsxs(Container, { style: {
@@ -50,6 +78,6 @@ export function PostOnRampSwap(props) {
50
78
  return (_jsx(SwapFlow, { title: props.title, payer: props.payer, buyWithCryptoQuote: lockedOnRampQuote, client: props.client, onBack: props.onBack, isFiatFlow: true, onDone: props.onDone, onTryAgain: () => {
51
79
  setLockedOnRampQuote(undefined);
52
80
  postOnRampQuoteQuery.refetch();
53
- }, transactionMode: props.transactionMode, isEmbed: props.isEmbed, onSuccess: props.onSuccess }));
81
+ }, transactionMode: props.transactionMode, isEmbed: props.isEmbed, onSuccess: props.onSuccess, approvalAmount: allowanceQuery.data ?? undefined }));
54
82
  }
55
83
  //# sourceMappingURL=PostOnRampSwap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostOnRampSwap.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostOnRampSwap.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { FiatProviders, } from "../../../../../../../pay/utils/commonTypes.js";
3
+ import { Container } from "../../../../components/basic.js";
4
+ import { Button } from "../../../../components/buttons.js";
5
+ import { Link } from "../../../../components/text.js";
6
+ /**
7
+ * @internal
8
+ */
9
+ export function Providers(props) {
10
+ return (_jsx(Container, { expand: true, flex: "column", gap: "sm", style: {
11
+ alignItems: "flex-start",
12
+ }, children: FiatProviders.map((provider) => {
13
+ return (_jsx(Container, { flex: "row", expand: true, style: {
14
+ justifyContent: "space-between",
15
+ }, children: _jsx(Button, { fullWidth: true, onClick: () => props.onSelect(provider), variant: "link", children: _jsx(Link, { color: props.preferredProvider === provider
16
+ ? "primaryText"
17
+ : "secondaryText", size: "sm", hoverColor: "primaryText", children: provider.charAt(0).toUpperCase() +
18
+ provider.slice(1).toLowerCase() }) }) }, provider));
19
+ }) }));
20
+ }
21
+ //# sourceMappingURL=Providers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Providers.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/fiat/Providers.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,aAAa,GACd,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,KAGzB;IACC,OAAO,CACL,KAAC,SAAS,IACR,MAAM,QACN,IAAI,EAAC,QAAQ,EACb,GAAG,EAAC,IAAI,EACR,KAAK,EAAE;YACL,UAAU,EAAE,YAAY;SACzB,YAEA,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC9B,OAAO,CACL,KAAC,SAAS,IAER,IAAI,EAAC,KAAK,EACV,MAAM,QACN,KAAK,EAAE;oBACL,cAAc,EAAE,eAAe;iBAChC,YAED,KAAC,MAAM,IACL,SAAS,QACT,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EACvC,OAAO,EAAE,MAAM,YAEf,KAAC,IAAI,IACH,KAAK,EACH,KAAK,CAAC,iBAAiB,KAAK,QAAQ;4BAClC,CAAC,CAAC,aAAa;4BACf,CAAC,CAAC,eAAe,EAErB,IAAI,EAAC,IAAI,EACT,UAAU,EAAC,aAAa,YAEvB,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;4BAC/B,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAC5B,GACA,IAxBJ,QAAQ,CAyBH,CACb,CAAC;QACJ,CAAC,CAAC,GACQ,CACb,CAAC;AACJ,CAAC"}
@@ -13,6 +13,7 @@ import { Input } from "../../../../components/formElements.js";
13
13
  import { Text } from "../../../../components/text.js";
14
14
  import { TokenSymbol } from "../../../../components/token/TokenSymbol.js";
15
15
  import { getBuyTokenAmountFontSize } from "../utils.js";
16
+ import { FiatValue } from "./FiatValue.js";
16
17
  /**
17
18
  * @internal
18
19
  */
@@ -61,7 +62,7 @@ export function BuyTokenInput(props) {
61
62
  textAlign: "right",
62
63
  width: getWidth(),
63
64
  maxWidth: "calc(100% - 100px)",
64
- } }), _jsx(TokenSymbol, { token: props.token, chain: props.chain, size: "lg", color: "secondaryText" })] }) }), !props.hideTokenSelector && (_jsxs(_Fragment, { children: [_jsx(Spacer, { y: "sm" }), _jsx(Container, { flex: "row", center: "x", children: _jsxs(TokenButton, { variant: "secondary", fullWidth: true, style: {
65
+ } }), _jsx(TokenSymbol, { token: props.token, chain: props.chain, size: "lg", color: "secondaryText" })] }) }), _jsx(Container, { flex: "row", center: "both", children: _jsx(FiatValue, { tokenAmount: props.value, token: props.token, chain: props.chain, client: props.client, size: "md" }) }), !props.hideTokenSelector && (_jsxs(_Fragment, { children: [_jsx(Spacer, { y: "md" }), _jsx(Container, { flex: "row", center: "x", children: _jsxs(TokenButton, { variant: "secondary", fullWidth: true, style: {
65
66
  fontSize: fontSize.sm,
66
67
  }, gap: "xxs", onClick: props.onSelectToken, disabled: props.freezeChainAndToken, children: [_jsxs(Container, { flex: "row", center: "y", gap: "sm", children: [_jsx(TokenIcon, { token: props.token, chain: props.chain, size: "md", client: props.client }), _jsxs(Container, { flex: "column", style: {
67
68
  gap: "4px",
@@ -1 +1 @@
1
- {"version":3,"file":"BuyTokenInput.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/BuyTokenInput.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BuyTokenInput.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/BuyTokenInput.tsx"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
2
2
  import { CrossCircledIcon } from "@radix-ui/react-icons";
3
3
  import { useState } from "react";
4
4
  import { trackPayEvent } from "../../../../../../../analytics/track/pay.js";
5
+ import { getContract } from "../../../../../../../contract/contract.js";
6
+ import { approve } from "../../../../../../../extensions/erc20/write/approve.js";
5
7
  import { sendTransaction } from "../../../../../../../transaction/actions/send-transaction.js";
6
8
  import { waitForReceipt } from "../../../../../../../transaction/actions/wait-for-tx-receipt.js";
7
9
  import { shortenAddress } from "../../../../../../../utils/address.js";
@@ -27,20 +29,22 @@ import { addPendingTx } from "./pendingSwapTx.js";
27
29
  * @internal
28
30
  */
29
31
  export function SwapConfirmationScreen(props) {
30
- const isApprovalRequired = props.quote.approval !== undefined;
31
- const initialStep = isApprovalRequired ? "approval" : "swap";
32
+ const needsApproval = props.quote.approvalData &&
33
+ props.preApprovedAmount !== undefined &&
34
+ props.preApprovedAmount < BigInt(props.quote.approvalData.amountWei);
35
+ const initialStep = needsApproval ? "approval" : "swap";
32
36
  const [step, setStep] = useState(initialStep);
33
37
  const [status, setStatus] = useState("idle");
34
38
  const receiver = props.quote.swapDetails.toAddress;
35
39
  const sender = props.quote.swapDetails.fromAddress;
36
40
  const isDifferentRecipient = receiver.toLowerCase() !== sender.toLowerCase();
37
41
  const ensName = useEnsName({ client: props.client, address: receiver });
38
- return (_jsxs(Container, { p: "lg", children: [_jsx(ModalHeader, { title: props.title, onBack: props.onBack }), props.isFiatFlow ? (_jsxs(_Fragment, { children: [_jsx(Spacer, { y: "lg" }), _jsx(StepBar, { steps: 2, currentStep: 2 }), _jsx(Spacer, { y: "sm" }), _jsxs(Text, { size: "xs", children: ["Step 2 of 2 - Converting ", props.fromTokenSymbol, " to", " ", props.toTokenSymbol] }), _jsx(Spacer, { y: "md" })] })) : (_jsx(Spacer, { y: "lg" })), _jsx(ConfirmItem, { label: "Pay", children: _jsx(RenderTokenInfo, { chain: props.fromChain, amount: String(formatNumber(Number(props.fromAmount), 6)), symbol: props.fromTokenSymbol || "", token: props.fromToken, client: props.client }) }), !isDifferentRecipient && (_jsx(ConfirmItem, { label: "Receive", children: _jsx(RenderTokenInfo, { chain: props.toChain, amount: String(formatNumber(Number(props.toAmount), 6)), symbol: props.toTokenSymbol, token: props.toToken, client: props.client }) })), _jsx(ConfirmItem, { label: "Fees", children: _jsx(SwapFeesRightAligned, { quote: props.quote }) }), _jsx(ConfirmItem, { label: "Time", children: _jsxs(Text, { size: "sm", color: "primaryText", children: ["~", formatSeconds(props.quote.swapDetails.estimated.durationSeconds || 0)] }) }), isDifferentRecipient && (_jsx(ConfirmItem, { label: "Receiver", children: _jsx(Text, { color: "primaryText", size: "sm", children: ensName.data || shortenAddress(receiver) }) })), _jsx(Spacer, { y: "xl" }), isApprovalRequired && (_jsxs(_Fragment, { children: [_jsx(Spacer, { y: "sm" }), _jsxs(Container, { gap: "sm", flex: "row", style: {
42
+ return (_jsxs(Container, { p: "lg", children: [_jsx(ModalHeader, { title: props.title, onBack: props.onBack }), props.isFiatFlow ? (_jsxs(_Fragment, { children: [_jsx(Spacer, { y: "lg" }), _jsx(StepBar, { steps: 2, currentStep: 2 }), _jsx(Spacer, { y: "sm" }), _jsxs(Text, { size: "xs", children: ["Step 2 of 2 - Converting ", props.fromTokenSymbol, " to", " ", props.toTokenSymbol] }), _jsx(Spacer, { y: "md" })] })) : (_jsx(Spacer, { y: "lg" })), _jsx(ConfirmItem, { label: "Pay", children: _jsx(RenderTokenInfo, { chain: props.fromChain, amount: String(formatNumber(Number(props.fromAmount), 6)), symbol: props.fromTokenSymbol || "", token: props.fromToken, client: props.client }) }), !isDifferentRecipient && (_jsx(ConfirmItem, { label: "Receive", children: _jsx(RenderTokenInfo, { chain: props.toChain, amount: String(formatNumber(Number(props.toAmount), 6)), symbol: props.toTokenSymbol, token: props.toToken, client: props.client }) })), _jsx(ConfirmItem, { label: "Fees", children: _jsx(SwapFeesRightAligned, { quote: props.quote }) }), _jsx(ConfirmItem, { label: "Time", children: _jsxs(Text, { size: "sm", color: "primaryText", children: ["~", formatSeconds(props.quote.swapDetails.estimated.durationSeconds || 0)] }) }), isDifferentRecipient && (_jsx(ConfirmItem, { label: "Receiver", children: _jsx(Text, { color: "primaryText", size: "sm", children: ensName.data || shortenAddress(receiver) }) })), _jsx(Spacer, { y: "xl" }), needsApproval && (_jsxs(_Fragment, { children: [_jsx(Spacer, { y: "sm" }), _jsxs(Container, { gap: "sm", flex: "row", style: {
39
43
  justifyContent: "space-between",
40
44
  }, center: "y", color: "accentText", children: [_jsx(Step, { isDone: step === "swap", isActive: step === "approval", label: step === "approval" ? "Approve" : "Approved" }), _jsx(ConnectorLine, {}), _jsx(Step, { isDone: false, label: "Confirm", isActive: step === "swap" })] }), _jsx(Spacer, { y: "lg" })] })), status === "error" && (_jsxs(_Fragment, { children: [_jsxs(Container, { flex: "row", gap: "xs", center: "both", color: "danger", children: [_jsx(CrossCircledIcon, { width: iconSize.sm, height: iconSize.sm }), _jsx(Text, { color: "danger", size: "sm", children: step === "approval" ? "Failed to Approve" : "Failed to Confirm" })] }), _jsx(Spacer, { y: "md" })] })), props.payer.chain.id !== props.fromChain.id ? (_jsx(SwitchNetworkButton, { fullWidth: true, variant: "accent", switchChain: async () => {
41
45
  await props.payer.wallet.switchChain(props.fromChain);
42
46
  } })) : (_jsxs(Button, { variant: "accent", fullWidth: true, disabled: status === "pending", onClick: async () => {
43
- if (step === "approval" && props.quote.approval) {
47
+ if (step === "approval" && props.quote.approvalData) {
44
48
  try {
45
49
  setStatus("pending");
46
50
  trackPayEvent({
@@ -55,12 +59,20 @@ export function SwapConfirmationScreen(props) {
55
59
  chainId: props.quote.swapDetails.fromToken.chainId,
56
60
  dstChainId: props.quote.swapDetails.toToken.chainId,
57
61
  });
62
+ const transaction = approve({
63
+ contract: getContract({
64
+ client: props.client,
65
+ address: props.quote.swapDetails.fromToken.tokenAddress,
66
+ chain: props.fromChain,
67
+ }),
68
+ spender: props.quote.approvalData.spenderAddress,
69
+ amountWei: BigInt(props.quote.approvalData.amountWei),
70
+ });
58
71
  const tx = await sendTransaction({
59
72
  account: props.payer.account,
60
- transaction: props.quote.approval,
73
+ transaction,
61
74
  });
62
75
  await waitForReceipt({ ...tx, maxBlocksWaitTime: 50 });
63
- // props.onQuoteFinalized(props.quote);
64
76
  trackPayEvent({
65
77
  event: "swap_approval_success",
66
78
  client: props.client,
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmationScreen.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfirmationScreen.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/ConfirmationScreen.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useQuery } from "@tanstack/react-query";
3
+ import { convertCryptoToFiat } from "../../../../../../../pay/convert/cryptoToFiat.js";
4
+ import { formatNumber } from "../../../../../../../utils/formatNumber.js";
5
+ import { fontSize } from "../../../../../../core/design-system/index.js";
6
+ import { Skeleton } from "../../../../components/Skeleton.js";
7
+ import { Text } from "../../../../components/text.js";
8
+ import { useDebouncedValue } from "../../../../hooks/useDebouncedValue.js";
9
+ import { getTokenAddress } from "../../nativeToken.js";
10
+ export function FiatValue(props) {
11
+ const deferredTokenAmount = useDebouncedValue(props.tokenAmount, 500);
12
+ const cryptoToFiatQuery = useQuery({
13
+ queryKey: [
14
+ "cryptoToFiat",
15
+ props.chain.id,
16
+ getTokenAddress(props.token),
17
+ deferredTokenAmount,
18
+ ],
19
+ queryFn: () => convertCryptoToFiat({
20
+ client: props.client,
21
+ chain: props.chain,
22
+ fromTokenAddress: getTokenAddress(props.token),
23
+ fromAmount: Number(deferredTokenAmount),
24
+ to: "USD",
25
+ }),
26
+ });
27
+ if (cryptoToFiatQuery.isLoading) {
28
+ return _jsx(Skeleton, { width: "50px", height: fontSize.lg });
29
+ }
30
+ return (_jsx(Text, { ...props, children: cryptoToFiatQuery.data?.result
31
+ ? `$${formatNumber(cryptoToFiatQuery.data.result, 2)}`
32
+ : "$0.00" }));
33
+ }
34
+ //# sourceMappingURL=FiatValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FiatValue.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/FiatValue.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,+CAA+C,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,UAAU,SAAS,CACvB,KAKa;IAEb,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IACtE,MAAM,iBAAiB,GAAG,QAAQ,CAAC;QACjC,QAAQ,EAAE;YACR,cAAc;YACd,KAAK,CAAC,KAAK,CAAC,EAAE;YACd,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;YAC5B,mBAAmB;SACpB;QACD,OAAO,EAAE,GAAG,EAAE,CACZ,mBAAmB,CAAC;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,gBAAgB,EAAE,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;YAC9C,UAAU,EAAE,MAAM,CAAC,mBAAmB,CAAC;YACvC,EAAE,EAAE,KAAK;SACV,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,iBAAiB,CAAC,SAAS,EAAE,CAAC;QAChC,OAAO,KAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAI,CAAC;IAC1D,CAAC;IAED,OAAO,CACL,KAAC,IAAI,OAAK,KAAK,YACZ,iBAAiB,CAAC,IAAI,EAAE,MAAM;YAC7B,CAAC,CAAC,IAAI,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE;YACtD,CAAC,CAAC,OAAO,GACN,CACR,CAAC;AACJ,CAAC"}
@@ -41,6 +41,6 @@ export function SwapFlow(props) {
41
41
  if (swapTxHash) {
42
42
  return (_jsx(SwapStatusScreen, { title: props.title, onBack: props.onBack, onTryAgain: props.onTryAgain, swapTxHash: swapTxHash, client: props.client, onDone: props.onDone, transactionMode: props.transactionMode, isEmbed: props.isEmbed, quote: quote, onSuccess: props.onSuccess }));
43
43
  }
44
- return (_jsx(SwapConfirmationScreen, { title: props.title, setSwapTxHash: setSwapTxHash, toChain: toChain, toAmount: toAmount, toTokenSymbol: toTokenSymbol, fromChain: fromChain, toToken: toToken, fromAmount: fromAmount, fromToken: fromToken, fromTokenSymbol: fromTokenSymbol, client: props.client, onBack: props.onBack, onTryAgain: props.onTryAgain, quote: quote, isFiatFlow: props.isFiatFlow, payer: props.payer }));
44
+ return (_jsx(SwapConfirmationScreen, { title: props.title, setSwapTxHash: setSwapTxHash, toChain: toChain, toAmount: toAmount, toTokenSymbol: toTokenSymbol, fromChain: fromChain, toToken: toToken, fromAmount: fromAmount, fromToken: fromToken, fromTokenSymbol: fromTokenSymbol, client: props.client, onBack: props.onBack, onTryAgain: props.onTryAgain, quote: quote, isFiatFlow: props.isFiatFlow, payer: props.payer, preApprovedAmount: props.approvalAmount }));
45
45
  }
46
46
  //# sourceMappingURL=SwapFlow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SwapFlow.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SwapFlow.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapFlow.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,162 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useQuery } from "@tanstack/react-query";
3
+ import { useState } from "react";
4
+ import { getCachedChain } from "../../../../../../../chains/utils.js";
5
+ import { NATIVE_TOKEN_ADDRESS } from "../../../../../../../constants/addresses.js";
6
+ import { getContract } from "../../../../../../../contract/contract.js";
7
+ import { allowance } from "../../../../../../../extensions/erc20/__generated__/IERC20/read/allowance.js";
8
+ import { formatNumber } from "../../../../../../../utils/formatNumber.js";
9
+ import { useWalletBalance } from "../../../../../../core/hooks/others/useWalletBalance.js";
10
+ import { useBuyWithCryptoQuote } from "../../../../../../core/hooks/pay/useBuyWithCryptoQuote.js";
11
+ import { defaultMessage, getErrorMessage, } from "../../../../../utils/errors.js";
12
+ import { Drawer, DrawerOverlay, useDrawer, } from "../../../../components/Drawer.js";
13
+ import { Spacer } from "../../../../components/Spacer.js";
14
+ import { Spinner } from "../../../../components/Spinner.js";
15
+ import { SwitchNetworkButton } from "../../../../components/SwitchNetwork.js";
16
+ import { Container } from "../../../../components/basic.js";
17
+ import { Button } from "../../../../components/buttons.js";
18
+ import { Text } from "../../../../components/text.js";
19
+ import { TokenSymbol } from "../../../../components/token/TokenSymbol.js";
20
+ import { isNativeToken } from "../../nativeToken.js";
21
+ import { EstimatedTimeAndFees } from "../EstimatedTimeAndFees.js";
22
+ import { SwapFees } from "./Fees.js";
23
+ import { PayWithCryptoQuoteInfo } from "./PayWithCrypto.js";
24
+ export function SwapScreenContent(props) {
25
+ const { setScreen, payer, client, toChain, tokenAmount, toToken, fromChain, fromToken, payOptions, disableTokenSelection, } = props;
26
+ const defaultRecipientAddress = props.payOptions?.paymentInfo?.sellerAddress;
27
+ const receiverAddress = defaultRecipientAddress || props.activeAccount.address;
28
+ const { drawerRef, drawerOverlayRef, isOpen, setIsOpen } = useDrawer();
29
+ const [drawerScreen, setDrawerScreen] = useState("fees");
30
+ const fromTokenBalanceQuery = useWalletBalance({
31
+ address: payer.account.address,
32
+ chain: fromChain,
33
+ tokenAddress: isNativeToken(fromToken) ? undefined : fromToken.address,
34
+ client,
35
+ });
36
+ const fromTokenId = isNativeToken(fromToken)
37
+ ? NATIVE_TOKEN_ADDRESS
38
+ : fromToken.address.toLowerCase();
39
+ const toTokenId = isNativeToken(toToken)
40
+ ? NATIVE_TOKEN_ADDRESS
41
+ : toToken.address.toLowerCase();
42
+ const swapRequired = !!tokenAmount &&
43
+ !(fromChain.id === toChain.id && fromTokenId === toTokenId);
44
+ const quoteParams = swapRequired
45
+ ? {
46
+ // wallets
47
+ fromAddress: payer.account.address,
48
+ toAddress: receiverAddress,
49
+ // from
50
+ fromChainId: fromChain.id,
51
+ fromTokenAddress: isNativeToken(fromToken)
52
+ ? NATIVE_TOKEN_ADDRESS
53
+ : fromToken.address,
54
+ // to
55
+ toChainId: toChain.id,
56
+ toTokenAddress: isNativeToken(toToken)
57
+ ? NATIVE_TOKEN_ADDRESS
58
+ : toToken.address,
59
+ toAmount: tokenAmount,
60
+ client,
61
+ purchaseData: payOptions.purchaseData,
62
+ }
63
+ : undefined;
64
+ const quoteQuery = useBuyWithCryptoQuote(quoteParams, {
65
+ // refetch every 30 seconds
66
+ staleTime: 30 * 1000,
67
+ refetchInterval: 30 * 1000,
68
+ gcTime: 30 * 1000,
69
+ });
70
+ const allowanceQuery = useQuery({
71
+ queryKey: [
72
+ "allowance",
73
+ payer.account.address,
74
+ quoteQuery.data?.approvalData,
75
+ ],
76
+ queryFn: () => {
77
+ if (!quoteQuery.data?.approvalData) {
78
+ return null;
79
+ }
80
+ return allowance({
81
+ contract: getContract({
82
+ client: props.client,
83
+ address: quoteQuery.data.swapDetails.fromToken.tokenAddress,
84
+ chain: getCachedChain(quoteQuery.data.swapDetails.fromToken.chainId),
85
+ }),
86
+ spender: quoteQuery.data.approvalData.spenderAddress,
87
+ owner: props.payer.account.address,
88
+ });
89
+ },
90
+ enabled: !!quoteQuery.data?.approvalData,
91
+ refetchOnMount: true,
92
+ });
93
+ const sourceTokenAmount = swapRequired
94
+ ? quoteQuery.data?.swapDetails.fromAmount
95
+ : tokenAmount;
96
+ const isNotEnoughBalance = !!sourceTokenAmount &&
97
+ !!fromTokenBalanceQuery.data &&
98
+ Number(fromTokenBalanceQuery.data.displayValue) < Number(sourceTokenAmount);
99
+ const disableContinue = (swapRequired && !quoteQuery.data) ||
100
+ isNotEnoughBalance ||
101
+ allowanceQuery.isLoading;
102
+ const switchChainRequired = props.payer.wallet.getChain()?.id !== fromChain.id;
103
+ const errorMsg = !quoteQuery.isLoading && quoteQuery.error
104
+ ? getErrorMessage(quoteQuery.error)
105
+ : undefined;
106
+ function showSwapFlow() {
107
+ if ((props.payOptions.mode === "direct_payment" ||
108
+ props.payOptions.mode === "fund_wallet") &&
109
+ !isNotEnoughBalance &&
110
+ !swapRequired) {
111
+ // same currency, just direct transfer
112
+ setScreen({
113
+ id: "transfer-flow",
114
+ });
115
+ }
116
+ else if (props.payOptions.mode === "transaction" &&
117
+ !isNotEnoughBalance &&
118
+ !swapRequired) {
119
+ if (payer.account.address !== receiverAddress) {
120
+ // needs transfer from another wallet before executing the transaction
121
+ setScreen({
122
+ id: "transfer-flow",
123
+ });
124
+ }
125
+ else {
126
+ // has enough balance to just do the transaction directly
127
+ props.onDone();
128
+ }
129
+ return;
130
+ }
131
+ if (!quoteQuery.data) {
132
+ return;
133
+ }
134
+ setScreen({
135
+ id: "swap-flow",
136
+ quote: quoteQuery.data,
137
+ approvalAmount: allowanceQuery.data ?? undefined,
138
+ });
139
+ }
140
+ function showFees() {
141
+ if (!quoteQuery.data) {
142
+ return;
143
+ }
144
+ setIsOpen(true);
145
+ setDrawerScreen("fees");
146
+ }
147
+ return (_jsxs(Container, { flex: "column", gap: "md", animate: "fadein", children: [isOpen && (_jsxs(_Fragment, { children: [_jsx(DrawerOverlay, { ref: drawerOverlayRef }), _jsx(Drawer, { ref: drawerRef, close: () => setIsOpen(false), children: drawerScreen === "fees" && quoteQuery.data && (_jsxs("div", { children: [_jsx(Text, { size: "lg", color: "primaryText", children: "Fees" }), _jsx(Spacer, { y: "lg" }), _jsx(SwapFees, { quote: quoteQuery.data })] })) })] })), _jsxs("div", { children: [_jsx(PayWithCryptoQuoteInfo, { value: sourceTokenAmount || "", chain: fromChain, token: fromToken, isLoading: quoteQuery.isLoading && !sourceTokenAmount, client: client, freezeChainAndTokenSelection: disableTokenSelection, payerAccount: props.payer.account, swapRequired: swapRequired }), swapRequired && (_jsx(EstimatedTimeAndFees, { quoteIsLoading: quoteQuery.isLoading, estimatedSeconds: quoteQuery.data?.swapDetails.estimated.durationSeconds, onViewFees: showFees })), _jsx(Spacer, { y: "md" })] }), errorMsg && (_jsx("div", { children: errorMsg.data?.minimumAmountEth ? (_jsxs(Text, { color: "danger", size: "sm", center: true, multiline: true, children: ["Minimum amount is", " ", formatNumber(Number(errorMsg.data.minimumAmountEth), 6), " ", _jsx(TokenSymbol, { token: toToken, chain: toChain, size: "sm", inline: true, color: "danger" })] })) : (_jsx(Text, { color: "danger", size: "sm", center: true, multiline: true, children: errorMsg.message || defaultMessage })) })), !errorMsg && isNotEnoughBalance && (_jsxs("div", { children: [_jsx(Text, { color: "danger", size: "sm", center: true, multiline: true, children: "Not enough funds." }), _jsx(Text, { color: "danger", size: "sm", center: true, multiline: true, children: "Try a different wallet or token." })] })), errorMsg?.data?.minimumAmountEth ? (_jsx(Button, { variant: "accent", fullWidth: true, onClick: () => {
148
+ props.setTokenAmount(formatNumber(Number(errorMsg.data?.minimumAmountEth), 6).toString());
149
+ props.setHasEditedAmount(true);
150
+ }, children: "Set Minimum" })) : switchChainRequired &&
151
+ !quoteQuery.isLoading &&
152
+ !allowanceQuery.isLoading &&
153
+ !isNotEnoughBalance &&
154
+ !quoteQuery.error ? (_jsx(SwitchNetworkButton, { variant: "accent", fullWidth: true, switchChain: async () => {
155
+ await props.payer.wallet.switchChain(fromChain);
156
+ } })) : (_jsx(Button, { variant: disableContinue ? "outline" : "accent", fullWidth: true, "data-disabled": disableContinue, disabled: disableContinue, onClick: async () => {
157
+ if (!disableContinue) {
158
+ showSwapFlow();
159
+ }
160
+ }, gap: "xs", children: quoteQuery.isLoading ? (_jsxs(_Fragment, { children: ["Getting price quote", _jsx(Spinner, { size: "sm", color: "accentText" })] })) : ("Continue") }))] }));
161
+ }
162
+ //# sourceMappingURL=SwapScreenContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SwapScreenContent.js","sourceRoot":"","sources":["../../../../../../../../../src/react/web/ui/ConnectWallet/screens/Buy/swap/SwapScreenContent.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { CheckCircledIcon } from "@radix-ui/react-icons";
3
3
  import { useState } from "react";
4
+ import { getCachedChain } from "../../../../../../../chains/utils.js";
4
5
  import { NATIVE_TOKEN_ADDRESS } from "../../../../../../../constants/addresses.js";
5
6
  import { getContract } from "../../../../../../../contract/contract.js";
7
+ import { allowance } from "../../../../../../../extensions/erc20/__generated__/IERC20/read/allowance.js";
8
+ import { approve } from "../../../../../../../extensions/erc20/write/approve.js";
6
9
  import { transfer } from "../../../../../../../extensions/erc20/write/transfer.js";
7
10
  import { getBuyWithCryptoTransfer } from "../../../../../../../pay/buyWithCrypto/getTransfer.js";
8
11
  import { sendAndConfirmTransaction } from "../../../../../../../transaction/actions/send-and-confirm-transaction.js";
@@ -85,13 +88,37 @@ export function TransferConfirmationScreen(props) {
85
88
  amount: tokenAmount,
86
89
  purchaseData: payOptions?.purchaseData,
87
90
  });
88
- if (transferResponse.approval) {
89
- setStep("approve");
90
- // approve the transfer
91
- await sendAndConfirmTransaction({
92
- account: props.payer.account,
93
- transaction: transferResponse.approval,
91
+ if (transferResponse.approvalData) {
92
+ // check allowance
93
+ const prevAllowance = await allowance({
94
+ contract: getContract({
95
+ client: client,
96
+ address: transferResponse.approvalData.tokenAddress,
97
+ chain: getCachedChain(transferResponse.approvalData.chainId),
98
+ }),
99
+ spender: transferResponse.approvalData
100
+ .spenderAddress,
101
+ owner: payer.account.address,
94
102
  });
103
+ if (prevAllowance <
104
+ BigInt(transferResponse.approvalData.amountWei)) {
105
+ setStep("approve");
106
+ const transaction = approve({
107
+ contract: getContract({
108
+ client: client,
109
+ address: transferResponse.approvalData.tokenAddress,
110
+ chain: getCachedChain(transferResponse.approvalData.chainId),
111
+ }),
112
+ spender: transferResponse.approvalData
113
+ .spenderAddress,
114
+ amountWei: BigInt(transferResponse.approvalData.amountWei),
115
+ });
116
+ // approve the transfer
117
+ await sendAndConfirmTransaction({
118
+ account: props.payer.account,
119
+ transaction,
120
+ });
121
+ }
95
122
  }
96
123
  setStep("transfer");
97
124
  // execute the transfer