@aurora-is-near/intents-swap-widget 3.18.1 → 3.18.3

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 (180) hide show
  1. package/dist/components/Accordion.js +34 -35
  2. package/dist/components/Accordion.js.map +1 -1
  3. package/dist/components/Banner.js +33 -19
  4. package/dist/components/Banner.js.map +1 -1
  5. package/dist/components/BlockingError.js +11 -16
  6. package/dist/components/BlockingError.js.map +1 -1
  7. package/dist/components/Button.d.ts +10 -2
  8. package/dist/components/Button.js +53 -43
  9. package/dist/components/Button.js.map +1 -1
  10. package/dist/components/CloseButton.js +6 -6
  11. package/dist/components/CloseButton.js.map +1 -1
  12. package/dist/components/CopyButton.d.ts +5 -2
  13. package/dist/components/CopyButton.js +11 -7
  14. package/dist/components/CopyButton.js.map +1 -1
  15. package/dist/components/DirectionSwitcher.js +12 -11
  16. package/dist/components/DirectionSwitcher.js.map +1 -1
  17. package/dist/components/Input.d.ts +5 -3
  18. package/dist/components/Input.js +16 -16
  19. package/dist/components/Input.js.map +1 -1
  20. package/dist/components/Notes.js +1 -1
  21. package/dist/components/Notes.js.map +1 -1
  22. package/dist/components/StatusWidget.js +8 -21
  23. package/dist/components/StatusWidget.js.map +1 -1
  24. package/dist/{config-DJObWR7Z.js → config-BMvXuF1-.js} +692 -673
  25. package/dist/config-BMvXuF1-.js.map +1 -0
  26. package/dist/config.js +21 -6
  27. package/dist/config.js.map +1 -1
  28. package/dist/errors.js +1 -1
  29. package/dist/ext/alchemy/index.js +1 -1
  30. package/dist/ext/index.js +1 -1
  31. package/dist/features/BalanceRpcLoader/TokenBalanceLoader.js +1 -1
  32. package/dist/features/BalanceRpcLoader/index.js +1 -1
  33. package/dist/features/BalanceRpcLoader/useTokenBalanceRpc.js +1 -1
  34. package/dist/features/ChainsDropdown/AllNetworksIcon.js +3 -3
  35. package/dist/features/ChainsDropdown/AllNetworksIcon.js.map +1 -1
  36. package/dist/features/ChainsDropdown/ChainItem.js +7 -7
  37. package/dist/features/ChainsDropdown/ChainItem.js.map +1 -1
  38. package/dist/features/ChainsDropdown/index.js +45 -33
  39. package/dist/features/ChainsDropdown/index.js.map +1 -1
  40. package/dist/features/DepositMethodSwitcher.js +18 -17
  41. package/dist/features/DepositMethodSwitcher.js.map +1 -1
  42. package/dist/features/ErrorBoundary.js +1 -1
  43. package/dist/features/ExternalDeposit.js +22 -15
  44. package/dist/features/ExternalDeposit.js.map +1 -1
  45. package/dist/features/SendAddress/index.js +15 -14
  46. package/dist/features/SendAddress/index.js.map +1 -1
  47. package/dist/features/SendAddress/useNotification.js +1 -1
  48. package/dist/features/SubmitButton/index.js +1 -1
  49. package/dist/features/SuccessScreen/CopyableValue.d.ts +5 -0
  50. package/dist/features/SuccessScreen/CopyableValue.js +11 -0
  51. package/dist/features/SuccessScreen/CopyableValue.js.map +1 -0
  52. package/dist/features/SuccessScreen/TokenRow.d.ts +8 -0
  53. package/dist/features/SuccessScreen/TokenRow.js +20 -0
  54. package/dist/features/SuccessScreen/TokenRow.js.map +1 -0
  55. package/dist/features/SuccessScreen/index.d.ts +5 -4
  56. package/dist/features/SuccessScreen/index.js +151 -49
  57. package/dist/features/SuccessScreen/index.js.map +1 -1
  58. package/dist/features/SuccessScreen/useSummaryItemsCount.d.ts +1 -0
  59. package/dist/features/SuccessScreen/useSummaryItemsCount.js +14 -0
  60. package/dist/features/SuccessScreen/useSummaryItemsCount.js.map +1 -0
  61. package/dist/features/SwapDirectionSwitcher.js +1 -1
  62. package/dist/features/SwapQuote/SwapQuote.js +1 -1
  63. package/dist/features/SwapQuote/index.js +1 -1
  64. package/dist/features/TokenInput/TokenInput.js +1 -1
  65. package/dist/features/TokenInput/TokenInputEmpty.js +1 -1
  66. package/dist/features/TokenInput/TokenInputSource.js +1 -1
  67. package/dist/features/TokenInput/TokenInputTarget.js +2 -2
  68. package/dist/features/TokenInput/WalletBalance.js +1 -1
  69. package/dist/features/TokenInput/hooks/index.js +1 -1
  70. package/dist/features/TokenInput/hooks/useTokenInputBalance.js +1 -1
  71. package/dist/features/TokenInput/index.js +1 -1
  72. package/dist/features/TokensList/TokenItem.js +2 -2
  73. package/dist/features/TokensList/TokensList.js +1 -1
  74. package/dist/features/TokensList/index.js +1 -1
  75. package/dist/features/TokensModal.js +11 -11
  76. package/dist/features/TokensModal.js.map +1 -1
  77. package/dist/features/WalletCompatibilityCheck/WalletCompatibilityModal.js +19 -6
  78. package/dist/features/WalletCompatibilityCheck/WalletCompatibilityModal.js.map +1 -1
  79. package/dist/features/WalletCompatibilityCheck/index.js +1 -1
  80. package/dist/features/index.js +1 -1
  81. package/dist/hooks/index.js +1 -1
  82. package/dist/hooks/useAllTokens.js +1 -1
  83. package/dist/hooks/useChains.js +1 -1
  84. package/dist/hooks/useCompatibilityCheck.js +1 -1
  85. package/dist/hooks/useDefaultToken.js +1 -1
  86. package/dist/hooks/useExternalDepositStatus/index.js +1 -1
  87. package/dist/hooks/useExternalDepositStatus/usePoaExternalDepositStatus.js +1 -1
  88. package/dist/hooks/useIntentsBalance.js +1 -1
  89. package/dist/hooks/useIsCompatibilityCheckRequired.js +1 -1
  90. package/dist/hooks/useMakeDepositAddress.js +1 -1
  91. package/dist/hooks/useMakeIntentsTransfer.js +1 -1
  92. package/dist/hooks/useMakeNEARFtTransferCall.js +1 -1
  93. package/dist/hooks/useMakeQuote.js +1 -1
  94. package/dist/hooks/useMakeQuoteTransfer.js +1 -1
  95. package/dist/hooks/useMakeTransfer.js +1 -1
  96. package/dist/hooks/useMergedBalance.js +1 -1
  97. package/dist/hooks/useSwitchChain.js +1 -1
  98. package/dist/hooks/useTheme.js +1 -1
  99. package/dist/hooks/useTokenInputPair.js +1 -1
  100. package/dist/hooks/useTokens.js +1 -1
  101. package/dist/hooks/useTokensFiltered.js +1 -1
  102. package/dist/hooks/useTokensIntentsUnique.js +1 -1
  103. package/dist/index.js +1 -1
  104. package/dist/machine/effects/index.js +1 -1
  105. package/dist/machine/effects/useAlchemyBalanceEffect.js +1 -1
  106. package/dist/machine/effects/useBalancesUpdateEffect.js +1 -1
  107. package/dist/machine/effects/useMakeQuoteEffect.js +1 -1
  108. package/dist/machine/effects/useSelectedTokensEffect.js +1 -1
  109. package/dist/machine/effects/useSetTokenBalanceEffect.js +1 -1
  110. package/dist/machine/effects/useSetTokenIntentsTargetEffect.js +1 -1
  111. package/dist/machine/effects/useWalletConnEffect.js +1 -1
  112. package/dist/machine/events/index.js +1 -1
  113. package/dist/machine/events/reset.d.ts +1 -0
  114. package/dist/machine/events/reset.js +2 -2
  115. package/dist/machine/events/reset.js.map +1 -1
  116. package/dist/machine/events/tokenSelect.js +1 -1
  117. package/dist/machine/events/validateInputAndMoveTo.js +1 -1
  118. package/dist/machine/events/validateInputs.js +1 -1
  119. package/dist/machine/index.js +1 -1
  120. package/dist/machine/snap.js +1 -1
  121. package/dist/machine/subscriptions/checkers/isSendAddressAsConnected.js +1 -1
  122. package/dist/machine/subscriptions/index.js +1 -1
  123. package/dist/styles.css +1 -1
  124. package/dist/tailwind.css +9 -0
  125. package/dist/theme/ThemeProvider.js +1 -1
  126. package/dist/types/localisation.d.ts +1 -1
  127. package/dist/utils/intents/signers/near.js +1 -1
  128. package/dist/utils/intents/signers/privy.js +1 -1
  129. package/dist/utils/near/getNearNep141StorageBalance.js +1 -1
  130. package/dist/widgets/WidgetDeposit/WidgetDepositContent.js +79 -71
  131. package/dist/widgets/WidgetDeposit/WidgetDepositContent.js.map +1 -1
  132. package/dist/widgets/WidgetDeposit/WidgetDepositSkeleton.js +1 -1
  133. package/dist/widgets/WidgetSwap/WidgetSwapContent.js +94 -81
  134. package/dist/widgets/WidgetSwap/WidgetSwapContent.js.map +1 -1
  135. package/dist/widgets/WidgetSwap/WidgetSwapSkeleton.js +1 -1
  136. package/dist/widgets/WidgetWithdraw/WidgetWithdrawContent.js +79 -67
  137. package/dist/widgets/WidgetWithdraw/WidgetWithdrawContent.js.map +1 -1
  138. package/dist/widgets/WidgetWithdraw/WidgetWithdrawSkeleton.js +1 -1
  139. package/package.json +1 -2
  140. package/src/components/Accordion.tsx +8 -9
  141. package/src/components/Banner.tsx +17 -8
  142. package/src/components/BlockingError.tsx +4 -6
  143. package/src/components/Button.tsx +26 -7
  144. package/src/components/CloseButton.tsx +2 -2
  145. package/src/components/CopyButton.tsx +14 -4
  146. package/src/components/DirectionSwitcher.tsx +4 -4
  147. package/src/components/Input.tsx +5 -4
  148. package/src/components/Notes.tsx +1 -1
  149. package/src/components/StatusWidget.tsx +4 -11
  150. package/src/features/ChainsDropdown/AllNetworksIcon.tsx +2 -2
  151. package/src/features/ChainsDropdown/ChainItem.tsx +2 -2
  152. package/src/features/ChainsDropdown/index.tsx +9 -3
  153. package/src/features/DepositMethodSwitcher.tsx +4 -3
  154. package/src/features/ExternalDeposit.tsx +2 -2
  155. package/src/features/SendAddress/index.tsx +3 -2
  156. package/src/features/SuccessScreen/CopyableValue.tsx +13 -0
  157. package/src/features/SuccessScreen/TokenRow.tsx +26 -0
  158. package/src/features/SuccessScreen/index.tsx +161 -55
  159. package/src/features/SuccessScreen/useSummaryItemsCount.ts +33 -0
  160. package/src/features/TokensModal.tsx +2 -2
  161. package/src/features/WalletCompatibilityCheck/WalletCompatibilityModal.tsx +8 -9
  162. package/src/machine/events/reset.ts +6 -3
  163. package/src/tailwind.css +9 -0
  164. package/src/types/localisation.ts +10 -3
  165. package/src/widgets/WidgetDeposit/WidgetDepositContent.tsx +6 -4
  166. package/src/widgets/WidgetSwap/WidgetSwapContent.tsx +7 -4
  167. package/src/widgets/WidgetWithdraw/WidgetWithdrawContent.tsx +7 -4
  168. package/dist/config-DJObWR7Z.js.map +0 -1
  169. package/dist/features/SuccessScreen/CheckIcon.d.ts +0 -1
  170. package/dist/features/SuccessScreen/CheckIcon.js +0 -7
  171. package/dist/features/SuccessScreen/CheckIcon.js.map +0 -1
  172. package/dist/features/SuccessScreen/ExternalAction.d.ts +0 -5
  173. package/dist/features/SuccessScreen/ExternalAction.js +0 -16
  174. package/dist/features/SuccessScreen/ExternalAction.js.map +0 -1
  175. package/dist/features/SuccessScreen/SummaryItem.d.ts +0 -8
  176. package/dist/features/SuccessScreen/SummaryItem.js +0 -21
  177. package/dist/features/SuccessScreen/SummaryItem.js.map +0 -1
  178. package/src/features/SuccessScreen/CheckIcon.tsx +0 -7
  179. package/src/features/SuccessScreen/ExternalAction.tsx +0 -15
  180. package/src/features/SuccessScreen/SummaryItem.tsx +0 -28
@@ -1,28 +1,30 @@
1
1
  import { jsx as t, jsxs as _ } from "react/jsx-runtime";
2
- import { useState as b, useEffect as y } from "react";
3
- import { useTokenModal as R } from "../../hooks/useTokenModal.js";
4
- import { WidgetSwapSkeleton as S } from "./WidgetSwapSkeleton.js";
5
- import { useTypedTranslation as D } from "../../localisation.js";
6
- import { b as N, u as O, y as Q, n as j, c as q, p as w, o as F, S as U } from "../../config-DJObWR7Z.js";
2
+ import { useState as S, useEffect as w } from "react";
3
+ import { useTokenModal as N } from "../../hooks/useTokenModal.js";
4
+ import { WidgetSwapSkeleton as T } from "./WidgetSwapSkeleton.js";
5
+ import { useTypedTranslation as O } from "../../localisation.js";
6
+ import { b as Q, u as j, y as q, n as F, c as U, p as b, o as K, S as P } from "../../config-BMvXuF1-.js";
7
7
  import "@tanstack/react-query";
8
8
  import "@headlessui/react";
9
+ import "@material-symbols-svg/react-rounded/icons/chevron-left";
9
10
  import "framer-motion";
10
- import "lucide-react";
11
11
  import "../../features/ChainsDropdown/ChainItem.js";
12
+ import "@material-symbols-svg/react-rounded/icons/target";
12
13
  import "../../utils/cn.js";
13
14
  import "../../constants/chains.js";
14
- import { notReachable as n } from "../../utils/notReachable.js";
15
- import { SendAddress as K } from "../../features/SendAddress/index.js";
16
- import { SuccessScreen as P } from "../../features/SuccessScreen/index.js";
17
- import { TokensModal as Y } from "../../features/TokensModal.js";
18
- import { SwapDirectionSwitcher as z } from "../../features/SwapDirectionSwitcher.js";
15
+ import { notReachable as s } from "../../utils/notReachable.js";
16
+ import { SendAddress as z } from "../../features/SendAddress/index.js";
17
+ import { SuccessScreen as G } from "../../features/SuccessScreen/index.js";
18
+ import { TokensModal as H } from "../../features/TokensModal.js";
19
+ import { SwapDirectionSwitcher as J } from "../../features/SwapDirectionSwitcher.js";
19
20
  import "qrcode.react";
20
21
  import "@defuse-protocol/one-click-sdk-typescript";
21
- import { isDebug as G } from "../../utils/checkers/isDebug.js";
22
+ import "@material-symbols-svg/react-rounded/icons/progress-activity";
23
+ import { isDebug as L } from "../../utils/checkers/isDebug.js";
22
24
  import "viem";
23
25
  import "ethers";
24
26
  import "../../machine/machine.js";
25
- import { fireEvent as H } from "../../machine/events/utils/fireEvent.js";
27
+ import { fireEvent as y } from "../../machine/events/utils/fireEvent.js";
26
28
  import "zod";
27
29
  import "../../utils/near/rpc.js";
28
30
  import "../../index-DEq3oXQF.js";
@@ -34,39 +36,52 @@ import "../../index-xuotMAFm.js";
34
36
  import "axios";
35
37
  import "../../network.js";
36
38
  import "viem/chains";
37
- import { useTokenInputPair as J } from "../../hooks/useTokenInputPair.js";
38
- import { useIsCompatibilityCheckRequired as L } from "../../hooks/useIsCompatibilityCheckRequired.js";
39
+ import { useTokenInputPair as V } from "../../hooks/useTokenInputPair.js";
40
+ import { useIsCompatibilityCheckRequired as X } from "../../hooks/useIsCompatibilityCheckRequired.js";
39
41
  import "browser-or-node";
40
- import { BlockingError as V } from "../../components/BlockingError.js";
42
+ import "@material-symbols-svg/react-rounded/icons/close";
43
+ import "@material-symbols-svg/react-rounded/icons/emergency";
44
+ import "@material-symbols-svg/react-rounded/icons/error";
45
+ import "@material-symbols-svg/react-rounded/icons/verified";
46
+ import { BlockingError as Y } from "../../components/BlockingError.js";
41
47
  import "copy-text-to-clipboard";
48
+ import "@material-symbols-svg/react-rounded/icons/content-copy";
49
+ import "@material-symbols-svg/react-rounded/icons/arrow-downward";
42
50
  import "../../components/Input.js";
43
51
  import "../../components/InputAmount.js";
44
52
  import "../../components/Notes.js";
45
- import { WalletCompatibilityCheck as X } from "../../features/WalletCompatibilityCheck/index.js";
46
- const Pe = ({
53
+ import "@material-symbols-svg/react-rounded/icons/check-circle";
54
+ import "@material-symbols-svg/react-rounded/icons/qr-code";
55
+ import "@material-symbols-svg/react-rounded/icons/wallet";
56
+ import { WalletCompatibilityCheck as Z } from "../../features/WalletCompatibilityCheck/index.js";
57
+ const tt = ({
47
58
  providers: m,
48
- makeTransfer: T,
59
+ makeTransfer: C,
49
60
  onMsg: c,
50
- isLoading: C,
51
- isOneWay: x
61
+ isLoading: x,
62
+ isOneWay: I
52
63
  }) => {
53
- const { ctx: o } = N(), { isDirectNearTokenWithdrawal: I } = O(), {
64
+ const { ctx: o } = Q(), { isDirectNearTokenWithdrawal: v } = j(), {
54
65
  chainsFilter: k,
55
- alchemyApiKey: v,
66
+ alchemyApiKey: A,
56
67
  refetchQuoteInterval: M,
57
- intentsAccountType: A,
58
- onWalletSignout: W
59
- } = Q(), { t: a } = D(), { status: d, refetch: B } = j(), { tokenModalOpen: s, updateTokenModalState: i } = R({ onMsg: c }), { onChangeAmount: f, onChangeToken: p, lastChangedInput: u } = J(), r = L(), [E, l] = b(
60
- r
68
+ intentsAccountType: W,
69
+ onWalletSignout: B
70
+ } = q(), { t: n } = O(), { status: f, refetch: E } = F(), { tokenModalOpen: r, updateTokenModalState: i } = N({ onMsg: c }), { onChangeAmount: d, onChangeToken: p, lastChangedInput: l } = V(), a = X(), [R, u] = S(
71
+ a
61
72
  );
62
- y(() => {
63
- r && l(r);
64
- }, [r]);
65
- const [h, g] = b();
66
- if (y(() => {
67
- H("reset", { clearWalletAddress: !0 });
68
- }, []), q({
69
- debug: G(),
73
+ w(() => {
74
+ a && u(a);
75
+ }, [a]);
76
+ const [h, g] = S();
77
+ w(() => {
78
+ y("reset", { clearWalletAddress: !0 });
79
+ }, []);
80
+ const D = () => {
81
+ y("reset", { clearWalletAddress: !1, keepSelectedTokens: !0 });
82
+ };
83
+ if (U({
84
+ debug: L(),
70
85
  listenTo: [
71
86
  "checkWalletConnection",
72
87
  "setSourceTokenBalance",
@@ -75,156 +90,154 @@ const Pe = ({
75
90
  "makeQuote",
76
91
  {
77
92
  message: void 0,
78
- type: u === "target" ? "exact_out" : "exact_in",
93
+ type: l === "target" ? "exact_out" : "exact_in",
79
94
  refetchQuoteInterval: M
80
95
  }
81
96
  ],
82
- ["setBalancesUsingAlchemyExt", { alchemyApiKey: v }]
97
+ ["setBalancesUsingAlchemyExt", { alchemyApiKey: A }]
83
98
  ]
84
- }), C || d !== "error" && !o.sourceToken)
85
- return /* @__PURE__ */ t(S, {});
86
- if (r && E)
99
+ }), x || f !== "error" && !o.sourceToken)
100
+ return /* @__PURE__ */ t(T, {});
101
+ if (a && R)
87
102
  return /* @__PURE__ */ t(
88
- X,
103
+ Z,
89
104
  {
90
105
  providers: m,
91
106
  onMsg: (e) => {
92
107
  switch (e.type) {
93
108
  case "on_sign_out":
94
- W?.(A), l(!1);
109
+ B?.(W), u(!1);
95
110
  break;
96
111
  case "on_close":
97
- l(!1);
112
+ u(!1);
98
113
  break;
99
114
  default:
100
- n(e.type);
115
+ s(e.type);
101
116
  }
102
117
  }
103
118
  }
104
119
  );
105
120
  if (o.state === "transfer_success" && h)
106
121
  return /* @__PURE__ */ t(
107
- P,
122
+ G,
108
123
  {
124
+ showTargetToken: !0,
125
+ title: n("transfer.success.swap.title", "Swap successful"),
109
126
  ...h,
110
- message: [
111
- "Your swap has been successfully completed,",
112
- "and the funds are now available in your account."
113
- ],
114
127
  onMsg: (e) => {
115
128
  switch (e.type) {
116
129
  case "on_dismiss_success":
117
- g(void 0);
130
+ g(void 0), D();
118
131
  break;
119
132
  default:
120
- n(e.type);
133
+ s(e.type);
121
134
  }
122
135
  }
123
136
  }
124
137
  );
125
- switch (d) {
138
+ switch (f) {
126
139
  case "error":
127
140
  return /* @__PURE__ */ t(
128
- V,
141
+ Y,
129
142
  {
130
143
  message: "Couldn't load tokens list.",
131
- onClickRetry: B
144
+ onClickRetry: E
132
145
  }
133
146
  );
134
147
  case "success":
135
- return s !== "none" ? /* @__PURE__ */ t(
136
- Y,
148
+ return r !== "none" ? /* @__PURE__ */ t(
149
+ H,
137
150
  {
138
151
  showBalances: !0,
139
152
  showChainsSelector: !0,
140
- variant: s,
141
- groupTokens: s === "source",
142
- chainsFilter: s === "source" ? k.source : k.target,
153
+ variant: r,
154
+ groupTokens: r === "source",
155
+ chainsFilter: r === "source" ? k.source : k.target,
143
156
  onMsg: (e) => {
144
157
  switch (e.type) {
145
158
  case "on_select_token":
146
- p(s, e.token), i("none"), c?.({
159
+ p(r, e.token), i("none"), c?.({
147
160
  type: e.type,
148
161
  token: e.token,
149
- variant: s
162
+ variant: r
150
163
  });
151
164
  break;
152
165
  case "on_dismiss_tokens_modal":
153
166
  i("none");
154
167
  break;
155
168
  default:
156
- n(e);
169
+ s(e);
157
170
  }
158
171
  }
159
172
  }
160
173
  ) : /* @__PURE__ */ _("div", { className: "gap-sw-2xl flex flex-col", children: [
161
174
  /* @__PURE__ */ _("div", { className: "gap-[10px] relative flex flex-col", children: [
162
175
  /* @__PURE__ */ t(
163
- w.Source,
176
+ b.Source,
164
177
  {
165
- heading: a("tokenInput.heading.source.swap", "Sell"),
166
- isChanging: u === "source",
178
+ heading: n("tokenInput.heading.source.swap", "Sell"),
179
+ isChanging: l === "source",
167
180
  onMsg: (e) => {
168
181
  switch (e.type) {
169
182
  case "on_select_token":
170
183
  p("source", e.token);
171
184
  break;
172
185
  case "on_change_amount":
173
- f("source", e.amount);
186
+ d("source", e.amount);
174
187
  break;
175
188
  case "on_click_select_token":
176
189
  i("source");
177
190
  break;
178
191
  default:
179
- n(e);
192
+ s(e);
180
193
  }
181
194
  }
182
195
  }
183
196
  ),
184
- /* @__PURE__ */ t(z, { disabled: x }),
197
+ /* @__PURE__ */ t(J, { disabled: I }),
185
198
  /* @__PURE__ */ t(
186
- w.Target,
199
+ b.Target,
187
200
  {
188
- heading: a("tokenInput.heading.target.swap", "Buy"),
189
- isChanging: u === "target",
201
+ heading: n("tokenInput.heading.target.swap", "Buy"),
202
+ isChanging: l === "target",
190
203
  onMsg: (e) => {
191
204
  switch (e.type) {
192
205
  case "on_select_token":
193
206
  p("target", e.token);
194
207
  break;
195
208
  case "on_change_amount":
196
- f("target", e.amount);
209
+ d("target", e.amount);
197
210
  break;
198
211
  case "on_click_select_token":
199
212
  i("target");
200
213
  break;
201
214
  default:
202
- n(e);
215
+ s(e);
203
216
  }
204
217
  }
205
218
  }
206
219
  )
207
220
  ] }),
208
221
  !!o.walletAddress && o.targetToken && !o.targetToken.isIntent && /* @__PURE__ */ t(
209
- K,
222
+ z,
210
223
  {
211
224
  onMsg: (e) => {
212
225
  switch (e.type) {
213
226
  case "on_change_send_address":
214
227
  break;
215
228
  default:
216
- n(e.type, { throwError: !1 });
229
+ s(e.type, { throwError: !1 });
217
230
  }
218
231
  }
219
232
  }
220
233
  ),
221
- !I && /* @__PURE__ */ t(F, {}),
234
+ !v && /* @__PURE__ */ t(K, {}),
222
235
  /* @__PURE__ */ t(
223
- U,
236
+ P,
224
237
  {
225
238
  providers: m,
226
- makeTransfer: T,
227
- label: o.sourceToken?.isIntent && o.targetToken?.isIntent ? a("submit.active.swap", "Swap") : a("submit.active.intentsSwap", "Swap & send"),
239
+ makeTransfer: C,
240
+ label: o.sourceToken?.isIntent && o.targetToken?.isIntent ? n("submit.active.swap", "Swap") : n("submit.active.intentsSwap", "Swap & send"),
228
241
  onSuccess: (e) => {
229
242
  g(e), c?.({ type: "on_transfer_success" });
230
243
  }
@@ -233,10 +246,10 @@ const Pe = ({
233
246
  ] });
234
247
  case "pending":
235
248
  default:
236
- return /* @__PURE__ */ t(S, {});
249
+ return /* @__PURE__ */ t(T, {});
237
250
  }
238
251
  };
239
252
  export {
240
- Pe as WidgetSwapContent
253
+ tt as WidgetSwapContent
241
254
  };
242
255
  //# sourceMappingURL=WidgetSwapContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetSwapContent.js","sources":["../../../src/widgets/WidgetSwap/WidgetSwapContent.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport type { CommonWidgetProps, TokenInputType } from '../types';\nimport { useTokenModal } from '../../hooks/useTokenModal';\nimport { WidgetSwapSkeleton } from './WidgetSwapSkeleton';\nimport { useTypedTranslation } from '../../localisation';\nimport {\n SendAddress,\n SubmitButton,\n SuccessScreen,\n SwapDirectionSwitcher,\n SwapQuote,\n TokenInput,\n TokensModal,\n} from '@/features';\n\nimport { BlockingError } from '@/components';\nimport { WalletCompatibilityCheck } from '@/features/WalletCompatibilityCheck';\n\nimport { useStoreSideEffects } from '@/machine/effects';\nimport { useComputedSnapshot, useUnsafeSnapshot } from '@/machine/snap';\nimport { fireEvent } from '@/machine/events/utils/fireEvent';\n\nimport {\n useIsCompatibilityCheckRequired,\n useTokenInputPair,\n useTokens,\n} from '@/hooks';\nimport { useConfig } from '@/config';\n\nimport { isDebug, notReachable } from '@/utils';\n\nimport type { Token, TransferResult } from '@/types';\n\ntype Msg =\n | { type: 'on_tokens_modal_toggled'; isOpen: boolean }\n | { type: 'on_select_token'; token: Token; variant: TokenInputType }\n | { type: 'on_transfer_success' };\n\nexport type Props = CommonWidgetProps<Msg> & {\n isOneWay?: boolean;\n};\n\nexport const WidgetSwapContent = ({\n providers,\n makeTransfer,\n onMsg,\n isLoading,\n isOneWay,\n}: Props) => {\n const { ctx } = useUnsafeSnapshot();\n const { isDirectNearTokenWithdrawal } = useComputedSnapshot();\n const {\n chainsFilter,\n alchemyApiKey,\n refetchQuoteInterval,\n intentsAccountType,\n onWalletSignout,\n } = useConfig();\n\n const { t } = useTypedTranslation();\n const { status: tokensStatus, refetch: refetchTokens } = useTokens();\n const { tokenModalOpen, updateTokenModalState } = useTokenModal({ onMsg });\n const { onChangeAmount, onChangeToken, lastChangedInput } =\n useTokenInputPair();\n\n const isCompatibilityCheckRequired = useIsCompatibilityCheckRequired();\n const [isCompatibilityOpen, setIsCompatibilityOpen] = useState(\n isCompatibilityCheckRequired,\n );\n\n useEffect(() => {\n if (isCompatibilityCheckRequired) {\n setIsCompatibilityOpen(isCompatibilityCheckRequired);\n }\n }, [isCompatibilityCheckRequired]);\n\n const [transferResult, setTransferResult] = useState<\n TransferResult | undefined\n >();\n\n useEffect(() => {\n fireEvent('reset', { clearWalletAddress: true });\n }, []);\n\n useStoreSideEffects({\n debug: isDebug(),\n listenTo: [\n 'checkWalletConnection',\n 'setSourceTokenBalance',\n ['setDefaultSelectedTokens', { skipIntents: false }],\n [\n 'makeQuote',\n {\n message: undefined,\n type: lastChangedInput === 'target' ? 'exact_out' : 'exact_in',\n refetchQuoteInterval,\n },\n ],\n ['setBalancesUsingAlchemyExt', { alchemyApiKey }],\n ],\n });\n\n if (!!isLoading || (tokensStatus !== 'error' && !ctx.sourceToken)) {\n return <WidgetSwapSkeleton />;\n }\n\n if (isCompatibilityCheckRequired && isCompatibilityOpen) {\n return (\n <WalletCompatibilityCheck\n providers={providers}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_sign_out':\n onWalletSignout?.(intentsAccountType);\n setIsCompatibilityOpen(false);\n break;\n case 'on_close':\n setIsCompatibilityOpen(false);\n break;\n default:\n notReachable(msg.type);\n }\n }}\n />\n );\n }\n\n if (ctx.state === 'transfer_success' && !!transferResult) {\n return (\n <SuccessScreen\n {...transferResult}\n message={[\n 'Your swap has been successfully completed,',\n 'and the funds are now available in your account.',\n ]}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_dismiss_success':\n setTransferResult(undefined);\n break;\n default:\n notReachable(msg.type);\n }\n }}\n />\n );\n }\n\n switch (tokensStatus) {\n case 'error':\n return (\n <BlockingError\n message=\"Couldn't load tokens list.\"\n onClickRetry={refetchTokens}\n />\n );\n\n case 'success': {\n if (tokenModalOpen !== 'none') {\n return (\n <TokensModal\n showBalances\n showChainsSelector\n variant={tokenModalOpen}\n groupTokens={tokenModalOpen === 'source'}\n chainsFilter={\n tokenModalOpen === 'source'\n ? chainsFilter.source\n : chainsFilter.target\n }\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken(tokenModalOpen, msg.token);\n updateTokenModalState('none');\n onMsg?.({\n type: msg.type,\n token: msg.token,\n variant: tokenModalOpen,\n });\n break;\n case 'on_dismiss_tokens_modal':\n updateTokenModalState('none');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n );\n }\n\n return (\n <div className=\"gap-sw-2xl flex flex-col\">\n <div className=\"gap-[10px] relative flex flex-col\">\n <TokenInput.Source\n heading={t('tokenInput.heading.source.swap', 'Sell')}\n isChanging={lastChangedInput === 'source'}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken('source', msg.token);\n break;\n case 'on_change_amount':\n onChangeAmount('source', msg.amount);\n break;\n case 'on_click_select_token':\n updateTokenModalState('source');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n\n <SwapDirectionSwitcher disabled={isOneWay} />\n\n <TokenInput.Target\n heading={t('tokenInput.heading.target.swap', 'Buy')}\n isChanging={lastChangedInput === 'target'}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken('target', msg.token);\n break;\n case 'on_change_amount':\n onChangeAmount('target', msg.amount);\n break;\n case 'on_click_select_token':\n updateTokenModalState('target');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n </div>\n\n {!!ctx.walletAddress &&\n ctx.targetToken &&\n !ctx.targetToken.isIntent && (\n <SendAddress\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_change_send_address':\n break;\n default:\n notReachable(msg.type, { throwError: false });\n }\n }}\n />\n )}\n\n {!isDirectNearTokenWithdrawal && <SwapQuote />}\n\n <SubmitButton\n providers={providers}\n makeTransfer={makeTransfer}\n label={\n ctx.sourceToken?.isIntent && ctx.targetToken?.isIntent\n ? t('submit.active.swap', 'Swap')\n : t('submit.active.intentsSwap', 'Swap & send')\n }\n onSuccess={(transfer) => {\n setTransferResult(transfer);\n onMsg?.({ type: 'on_transfer_success' });\n }}\n />\n </div>\n );\n }\n\n case 'pending':\n default:\n return <WidgetSwapSkeleton />;\n }\n};\n"],"names":["WidgetSwapContent","providers","makeTransfer","onMsg","isLoading","isOneWay","ctx","useUnsafeSnapshot","isDirectNearTokenWithdrawal","useComputedSnapshot","chainsFilter","alchemyApiKey","refetchQuoteInterval","intentsAccountType","onWalletSignout","useConfig","t","useTypedTranslation","tokensStatus","refetchTokens","useTokens","tokenModalOpen","updateTokenModalState","useTokenModal","onChangeAmount","onChangeToken","lastChangedInput","useTokenInputPair","isCompatibilityCheckRequired","useIsCompatibilityCheckRequired","isCompatibilityOpen","setIsCompatibilityOpen","useState","useEffect","transferResult","setTransferResult","fireEvent","useStoreSideEffects","isDebug","WidgetSwapSkeleton","jsx","WalletCompatibilityCheck","msg","notReachable","SuccessScreen","BlockingError","TokensModal","jsxs","TokenInput","SwapDirectionSwitcher","SendAddress","SwapQuote","SubmitButton","transfer"],"mappings":"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"}
1
+ {"version":3,"file":"WidgetSwapContent.js","sources":["../../../src/widgets/WidgetSwap/WidgetSwapContent.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport type { CommonWidgetProps, TokenInputType } from '../types';\nimport { useTokenModal } from '../../hooks/useTokenModal';\nimport { WidgetSwapSkeleton } from './WidgetSwapSkeleton';\nimport { useTypedTranslation } from '../../localisation';\nimport {\n SendAddress,\n SubmitButton,\n SuccessScreen,\n SwapDirectionSwitcher,\n SwapQuote,\n TokenInput,\n TokensModal,\n} from '@/features';\n\nimport { BlockingError } from '@/components';\nimport { WalletCompatibilityCheck } from '@/features/WalletCompatibilityCheck';\n\nimport { useStoreSideEffects } from '@/machine/effects';\nimport { useComputedSnapshot, useUnsafeSnapshot } from '@/machine/snap';\nimport { fireEvent } from '@/machine/events/utils/fireEvent';\n\nimport {\n useIsCompatibilityCheckRequired,\n useTokenInputPair,\n useTokens,\n} from '@/hooks';\nimport { useConfig } from '@/config';\n\nimport { isDebug, notReachable } from '@/utils';\n\nimport type { Token, TransferResult } from '@/types';\n\ntype Msg =\n | { type: 'on_tokens_modal_toggled'; isOpen: boolean }\n | { type: 'on_select_token'; token: Token; variant: TokenInputType }\n | { type: 'on_transfer_success' };\n\nexport type Props = CommonWidgetProps<Msg> & {\n isOneWay?: boolean;\n};\n\nexport const WidgetSwapContent = ({\n providers,\n makeTransfer,\n onMsg,\n isLoading,\n isOneWay,\n}: Props) => {\n const { ctx } = useUnsafeSnapshot();\n const { isDirectNearTokenWithdrawal } = useComputedSnapshot();\n const {\n chainsFilter,\n alchemyApiKey,\n refetchQuoteInterval,\n intentsAccountType,\n onWalletSignout,\n } = useConfig();\n\n const { t } = useTypedTranslation();\n const { status: tokensStatus, refetch: refetchTokens } = useTokens();\n const { tokenModalOpen, updateTokenModalState } = useTokenModal({ onMsg });\n const { onChangeAmount, onChangeToken, lastChangedInput } =\n useTokenInputPair();\n\n const isCompatibilityCheckRequired = useIsCompatibilityCheckRequired();\n const [isCompatibilityOpen, setIsCompatibilityOpen] = useState(\n isCompatibilityCheckRequired,\n );\n\n useEffect(() => {\n if (isCompatibilityCheckRequired) {\n setIsCompatibilityOpen(isCompatibilityCheckRequired);\n }\n }, [isCompatibilityCheckRequired]);\n\n const [transferResult, setTransferResult] = useState<\n TransferResult | undefined\n >();\n\n useEffect(() => {\n fireEvent('reset', { clearWalletAddress: true });\n }, []);\n\n const onBackToSwap = () => {\n fireEvent('reset', { clearWalletAddress: false, keepSelectedTokens: true });\n };\n\n useStoreSideEffects({\n debug: isDebug(),\n listenTo: [\n 'checkWalletConnection',\n 'setSourceTokenBalance',\n ['setDefaultSelectedTokens', { skipIntents: false }],\n [\n 'makeQuote',\n {\n message: undefined,\n type: lastChangedInput === 'target' ? 'exact_out' : 'exact_in',\n refetchQuoteInterval,\n },\n ],\n ['setBalancesUsingAlchemyExt', { alchemyApiKey }],\n ],\n });\n\n if (!!isLoading || (tokensStatus !== 'error' && !ctx.sourceToken)) {\n return <WidgetSwapSkeleton />;\n }\n\n if (isCompatibilityCheckRequired && isCompatibilityOpen) {\n return (\n <WalletCompatibilityCheck\n providers={providers}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_sign_out':\n onWalletSignout?.(intentsAccountType);\n setIsCompatibilityOpen(false);\n break;\n case 'on_close':\n setIsCompatibilityOpen(false);\n break;\n default:\n notReachable(msg.type);\n }\n }}\n />\n );\n }\n\n if (ctx.state === 'transfer_success' && !!transferResult) {\n return (\n <SuccessScreen\n showTargetToken\n title={t('transfer.success.swap.title', 'Swap successful')}\n {...transferResult}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_dismiss_success':\n setTransferResult(undefined);\n onBackToSwap();\n break;\n default:\n notReachable(msg.type);\n }\n }}\n />\n );\n }\n\n switch (tokensStatus) {\n case 'error':\n return (\n <BlockingError\n message=\"Couldn't load tokens list.\"\n onClickRetry={refetchTokens}\n />\n );\n\n case 'success': {\n if (tokenModalOpen !== 'none') {\n return (\n <TokensModal\n showBalances\n showChainsSelector\n variant={tokenModalOpen}\n groupTokens={tokenModalOpen === 'source'}\n chainsFilter={\n tokenModalOpen === 'source'\n ? chainsFilter.source\n : chainsFilter.target\n }\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken(tokenModalOpen, msg.token);\n updateTokenModalState('none');\n onMsg?.({\n type: msg.type,\n token: msg.token,\n variant: tokenModalOpen,\n });\n break;\n case 'on_dismiss_tokens_modal':\n updateTokenModalState('none');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n );\n }\n\n return (\n <div className=\"gap-sw-2xl flex flex-col\">\n <div className=\"gap-[10px] relative flex flex-col\">\n <TokenInput.Source\n heading={t('tokenInput.heading.source.swap', 'Sell')}\n isChanging={lastChangedInput === 'source'}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken('source', msg.token);\n break;\n case 'on_change_amount':\n onChangeAmount('source', msg.amount);\n break;\n case 'on_click_select_token':\n updateTokenModalState('source');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n\n <SwapDirectionSwitcher disabled={isOneWay} />\n\n <TokenInput.Target\n heading={t('tokenInput.heading.target.swap', 'Buy')}\n isChanging={lastChangedInput === 'target'}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken('target', msg.token);\n break;\n case 'on_change_amount':\n onChangeAmount('target', msg.amount);\n break;\n case 'on_click_select_token':\n updateTokenModalState('target');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n </div>\n\n {!!ctx.walletAddress &&\n ctx.targetToken &&\n !ctx.targetToken.isIntent && (\n <SendAddress\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_change_send_address':\n break;\n default:\n notReachable(msg.type, { throwError: false });\n }\n }}\n />\n )}\n\n {!isDirectNearTokenWithdrawal && <SwapQuote />}\n\n <SubmitButton\n providers={providers}\n makeTransfer={makeTransfer}\n label={\n ctx.sourceToken?.isIntent && ctx.targetToken?.isIntent\n ? t('submit.active.swap', 'Swap')\n : t('submit.active.intentsSwap', 'Swap & send')\n }\n onSuccess={(transfer) => {\n setTransferResult(transfer);\n onMsg?.({ type: 'on_transfer_success' });\n }}\n />\n </div>\n );\n }\n\n case 'pending':\n default:\n return <WidgetSwapSkeleton />;\n }\n};\n"],"names":["WidgetSwapContent","providers","makeTransfer","onMsg","isLoading","isOneWay","ctx","useUnsafeSnapshot","isDirectNearTokenWithdrawal","useComputedSnapshot","chainsFilter","alchemyApiKey","refetchQuoteInterval","intentsAccountType","onWalletSignout","useConfig","t","useTypedTranslation","tokensStatus","refetchTokens","useTokens","tokenModalOpen","updateTokenModalState","useTokenModal","onChangeAmount","onChangeToken","lastChangedInput","useTokenInputPair","isCompatibilityCheckRequired","useIsCompatibilityCheckRequired","isCompatibilityOpen","setIsCompatibilityOpen","useState","useEffect","transferResult","setTransferResult","fireEvent","onBackToSwap","useStoreSideEffects","isDebug","WidgetSwapSkeleton","jsx","WalletCompatibilityCheck","msg","notReachable","SuccessScreen","BlockingError","TokensModal","jsxs","TokenInput","SwapDirectionSwitcher","SendAddress","SwapQuote","SubmitButton","transfer"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { jsxs as a, jsx as l } from "react/jsx-runtime";
2
2
  import o from "clsx";
3
3
  import { SkeletonBox as s } from "../../components/SkeletonBox.js";
4
- import { y as i } from "../../config-DJObWR7Z.js";
4
+ import { y as i } from "../../config-BMvXuF1-.js";
5
5
  const m = () => {
6
6
  const { hideTokenInputHeadings: e } = i();
7
7
  return /* @__PURE__ */ a("div", { className: "w-full gap-sw-lg relative flex flex-col", children: [