@aurora-is-near/intents-swap-widget 3.14.0-redesign.2 → 3.14.0-redesign.7

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 (145) hide show
  1. package/dist/components/BlockingError.js +15 -9
  2. package/dist/components/BlockingError.js.map +1 -1
  3. package/dist/components/CloseButton.js +1 -1
  4. package/dist/components/CloseButton.js.map +1 -1
  5. package/dist/{config-Bmc4hOIl.js → config-Behl5hcc.js} +1179 -952
  6. package/dist/config-Behl5hcc.js.map +1 -0
  7. package/dist/config.d.ts +1 -0
  8. package/dist/config.js +4 -6
  9. package/dist/config.js.map +1 -1
  10. package/dist/errors.js +1 -1
  11. package/dist/ext/alchemy/index.js +1 -1
  12. package/dist/ext/index.js +1 -1
  13. package/dist/features/BalanceRpcLoader/TokenBalanceLoader.js +1 -1
  14. package/dist/features/BalanceRpcLoader/index.js +1 -1
  15. package/dist/features/BalanceRpcLoader/useTokenBalanceRpc.js +1 -1
  16. package/dist/features/ChainsDropdown/index.js +1 -1
  17. package/dist/features/DepositMethodSwitcher.js +26 -29
  18. package/dist/features/DepositMethodSwitcher.js.map +1 -1
  19. package/dist/features/ErrorBoundary.js +1 -1
  20. package/dist/features/ExternalDeposit.js +27 -28
  21. package/dist/features/ExternalDeposit.js.map +1 -1
  22. package/dist/features/SendAddress/index.js +1 -1
  23. package/dist/features/SendAddress/useNotification.js +1 -1
  24. package/dist/features/SubmitButton/index.js +1 -1
  25. package/dist/features/SuccessScreen/SummaryItem.js +2 -2
  26. package/dist/features/SuccessScreen/SummaryItem.js.map +1 -1
  27. package/dist/features/SuccessScreen/index.js +20 -20
  28. package/dist/features/SuccessScreen/index.js.map +1 -1
  29. package/dist/features/SwapDirectionSwitcher.js +1 -1
  30. package/dist/features/SwapQuote/SwapQuote.js +1 -1
  31. package/dist/features/SwapQuote/index.js +1 -1
  32. package/dist/features/TokenInput/TokenInput.js +1 -1
  33. package/dist/features/TokenInput/TokenInputEmpty.js +1 -1
  34. package/dist/features/TokenInput/TokenInputSource.js +1 -1
  35. package/dist/features/TokenInput/TokenInputTarget.js +1 -1
  36. package/dist/features/TokenInput/WalletBalance.js +1 -1
  37. package/dist/features/TokenInput/hooks/index.js +1 -1
  38. package/dist/features/TokenInput/hooks/useTokenInputBalance.js +1 -1
  39. package/dist/features/TokenInput/index.js +1 -1
  40. package/dist/features/TokensList/TokenItem.js +1 -1
  41. package/dist/features/TokensList/TokensList.js +1 -1
  42. package/dist/features/TokensList/index.js +1 -1
  43. package/dist/features/TokensModal.js +1 -1
  44. package/dist/features/WalletCompatibilityCheck/WalletCompatibilityModal.js +13 -191
  45. package/dist/features/WalletCompatibilityCheck/WalletCompatibilityModal.js.map +1 -1
  46. package/dist/features/WalletCompatibilityCheck/index.js +21 -26
  47. package/dist/features/WalletCompatibilityCheck/index.js.map +1 -1
  48. package/dist/features/index.js +1 -1
  49. package/dist/hooks/index.js +1 -1
  50. package/dist/hooks/useAllTokens.js +1 -1
  51. package/dist/hooks/useChains.js +1 -1
  52. package/dist/hooks/useCompatibilityCheck.js +1 -1
  53. package/dist/hooks/useDefaultToken.js +1 -1
  54. package/dist/hooks/useExternalDepositStatus/index.js +1 -1
  55. package/dist/hooks/useExternalDepositStatus/usePoaExternalDepositStatus.js +1 -1
  56. package/dist/hooks/useIntentsBalance.js +1 -1
  57. package/dist/hooks/useIsCompatibilityCheckRequired.d.ts +1 -1
  58. package/dist/hooks/useIsCompatibilityCheckRequired.js +2 -2
  59. package/dist/hooks/useIsCompatibilityCheckRequired.js.map +1 -1
  60. package/dist/hooks/useMakeDepositAddress.js +1 -1
  61. package/dist/hooks/useMakeIntentsTransfer.js +1 -1
  62. package/dist/hooks/useMakeNEARFtTransferCall.js +1 -1
  63. package/dist/hooks/useMakeQuote.js +1 -1
  64. package/dist/hooks/useMakeQuoteTransfer.js +1 -1
  65. package/dist/hooks/useMakeTransfer.js +1 -1
  66. package/dist/hooks/useMergedBalance.js +1 -1
  67. package/dist/hooks/useSwitchChain.js +1 -1
  68. package/dist/hooks/useTheme.js +1 -1
  69. package/dist/hooks/useToggleTheme.js +20 -17
  70. package/dist/hooks/useToggleTheme.js.map +1 -1
  71. package/dist/hooks/useTokenInputPair.js +1 -1
  72. package/dist/hooks/useTokens.js +1 -1
  73. package/dist/hooks/useTokensFiltered.js +1 -1
  74. package/dist/hooks/useTokensIntentsUnique.js +1 -1
  75. package/dist/index.js +1 -1
  76. package/dist/machine/computed/getIsDirectNearTokenWithdrawal.js +1 -1
  77. package/dist/machine/computed/getIsDirectNearTokenWithdrawal.js.map +1 -1
  78. package/dist/machine/computed/getIsDirectTokenOnNearDeposit.js +1 -1
  79. package/dist/machine/computed/getIsDirectTokenOnNearDeposit.js.map +1 -1
  80. package/dist/machine/computed/getIsDirectTokenOnNearTransfer.js +1 -1
  81. package/dist/machine/computed/getIsDirectTokenOnNearTransfer.js.map +1 -1
  82. package/dist/machine/effects/index.js +1 -1
  83. package/dist/machine/effects/useAlchemyBalanceEffect.js +1 -1
  84. package/dist/machine/effects/useBalancesUpdateEffect.js +1 -1
  85. package/dist/machine/effects/useMakeQuoteEffect.js +1 -1
  86. package/dist/machine/effects/useSelectedTokensEffect.js +1 -1
  87. package/dist/machine/effects/useSetTokenBalanceEffect.js +1 -1
  88. package/dist/machine/effects/useSetTokenIntentsTargetEffect.js +1 -1
  89. package/dist/machine/effects/useWalletConnEffect.js +1 -1
  90. package/dist/machine/events/index.js +1 -1
  91. package/dist/machine/events/tokenSelect.js +1 -1
  92. package/dist/machine/events/validateInputAndMoveTo.js +1 -1
  93. package/dist/machine/events/validateInputs.js +1 -1
  94. package/dist/machine/index.js +1 -1
  95. package/dist/machine/snap.js +1 -1
  96. package/dist/machine/subscriptions/checkers/isSendAddressAsConnected.js +1 -1
  97. package/dist/machine/subscriptions/index.js +1 -1
  98. package/dist/styles.css +1 -1
  99. package/dist/theme/ThemeProvider.js +7 -24
  100. package/dist/theme/ThemeProvider.js.map +1 -1
  101. package/dist/types/config.d.ts +1 -0
  102. package/dist/types/localisation.d.ts +1 -1
  103. package/dist/utils/intents/signers/near.js +1 -1
  104. package/dist/utils/intents/signers/privy.js +1 -1
  105. package/dist/utils/localstorage.js +41 -28
  106. package/dist/utils/localstorage.js.map +1 -1
  107. package/dist/utils/near/getNearNep141StorageBalance.js +1 -1
  108. package/dist/widgets/WidgetDeposit/WidgetDepositContent.js +11 -12
  109. package/dist/widgets/WidgetDeposit/WidgetDepositContent.js.map +1 -1
  110. package/dist/widgets/WidgetDeposit/WidgetDepositSkeleton.js +1 -1
  111. package/dist/widgets/WidgetSwap/WidgetSwapContent.js +27 -26
  112. package/dist/widgets/WidgetSwap/WidgetSwapContent.js.map +1 -1
  113. package/dist/widgets/WidgetSwap/WidgetSwapSkeleton.js +1 -1
  114. package/dist/widgets/WidgetWithdraw/WidgetWithdrawContent.js +5 -6
  115. package/dist/widgets/WidgetWithdraw/WidgetWithdrawContent.js.map +1 -1
  116. package/dist/widgets/WidgetWithdraw/WidgetWithdrawSkeleton.js +1 -1
  117. package/package.json +3 -2
  118. package/src/components/BlockingError.tsx +7 -4
  119. package/src/components/CloseButton.tsx +1 -1
  120. package/src/features/DepositMethodSwitcher.tsx +5 -17
  121. package/src/features/ExternalDeposit.tsx +8 -7
  122. package/src/features/SubmitButton/index.tsx +40 -0
  123. package/src/features/SuccessScreen/SummaryItem.tsx +2 -2
  124. package/src/features/SuccessScreen/index.tsx +5 -3
  125. package/src/features/SwapQuote/SwapQuote.tsx +1 -1
  126. package/src/features/WalletCompatibilityCheck/WalletCompatibilityModal.tsx +3 -0
  127. package/src/features/WalletCompatibilityCheck/index.tsx +4 -8
  128. package/src/hooks/useExternalDepositStatus/usePoaExternalDepositStatus.ts +2 -1
  129. package/src/hooks/useIsCompatibilityCheckRequired.ts +1 -1
  130. package/src/hooks/useToggleTheme.ts +11 -4
  131. package/src/machine/computed/getIsDirectNearTokenWithdrawal.ts +2 -1
  132. package/src/machine/computed/getIsDirectTokenOnNearDeposit.ts +2 -1
  133. package/src/machine/computed/getIsDirectTokenOnNearTransfer.ts +2 -1
  134. package/src/theme/ThemeProvider.tsx +33 -14
  135. package/src/types/config.ts +1 -0
  136. package/src/types/localisation.ts +4 -0
  137. package/src/utils/localstorage.ts +35 -10
  138. package/src/widgets/WidgetDeposit/WidgetDepositContent.tsx +3 -3
  139. package/src/widgets/WidgetSwap/WidgetSwapContent.tsx +5 -3
  140. package/src/widgets/WidgetWithdraw/WidgetWithdrawContent.tsx +3 -3
  141. package/dist/config-Bmc4hOIl.js.map +0 -1
  142. package/dist/features/SuccessScreen/CloseButton.d.ts +0 -5
  143. package/dist/features/SuccessScreen/CloseButton.js +0 -15
  144. package/dist/features/SuccessScreen/CloseButton.js.map +0 -1
  145. package/src/features/SuccessScreen/CloseButton.tsx +0 -14
package/dist/config.d.ts CHANGED
@@ -78,6 +78,7 @@ export declare const useConfig: () => {
78
78
  readonly tonCenterApiKey?: string | undefined;
79
79
  readonly hideSendAddress?: boolean | undefined;
80
80
  readonly hideTokenInputHeadings?: boolean | undefined;
81
+ readonly themeParentElementSelector?: string | undefined;
81
82
  };
82
83
  export declare const WidgetConfigProvider: ({ children, config: userConfig, balanceViaRpc, localisation, rpcs, theme, }: Props) => import("react/jsx-runtime").JSX.Element;
83
84
  export {};
package/dist/config.js CHANGED
@@ -8,7 +8,7 @@ import "react";
8
8
  import "@tanstack/react-query";
9
9
  import "react-i18next";
10
10
  import "./localisation.js";
11
- import { W as M, ad as N, y as O } from "./config-Bmc4hOIl.js";
11
+ import { W as K, ai as L, y as M } from "./config-Behl5hcc.js";
12
12
  import "@headlessui/react";
13
13
  import "framer-motion";
14
14
  import "lucide-react";
@@ -34,13 +34,11 @@ import "browser-or-node";
34
34
  import "qrcode.react";
35
35
  import "./components/InputAmount.js";
36
36
  import "./components/Notes.js";
37
- import "./theme/ThemeProvider.js";
38
- import "./features/WalletCompatibilityCheck/WalletCompatibilityModal.js";
39
37
  import "./rpcs.js";
40
38
  import "./hooks/useAddClassToPortal.js";
41
39
  export {
42
- M as WidgetConfigProvider,
43
- N as configStore,
44
- O as useConfig
40
+ K as WidgetConfigProvider,
41
+ L as configStore,
42
+ M as useConfig
45
43
  };
46
44
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"config.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/errors.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "valtio";
2
- import { M as t, Q as e, w as E, v as m, x as p } from "./config-Bmc4hOIl.js";
2
+ import { M as t, Q as e, w as E, v as m, x as p } from "./config-Behl5hcc.js";
3
3
  import "ethers";
4
4
  import "./machine/machine.js";
5
5
  export {
@@ -3,7 +3,7 @@ import "@tanstack/react-query";
3
3
  import "./parse.js";
4
4
  import "./load.js";
5
5
  import "./types.js";
6
- import { t as s } from "../../config-Bmc4hOIl.js";
6
+ import { t as s } from "../../config-Behl5hcc.js";
7
7
  import "../../machine/guards/index.js";
8
8
  import "../../machine/machine.js";
9
9
  import "../../machine/events/utils/fireEvent.js";
package/dist/ext/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t } from "../config-Bmc4hOIl.js";
1
+ import { t } from "../config-Behl5hcc.js";
2
2
  export {
3
3
  t as useAlchemyBalanceIntegration
4
4
  };
@@ -1,5 +1,5 @@
1
1
  import "react";
2
- import { C as r } from "../../config-Bmc4hOIl.js";
2
+ import { E as r } from "../../config-Behl5hcc.js";
3
3
  export {
4
4
  r as TokenBalanceLoader
5
5
  };
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { B as i } from "../../config-Bmc4hOIl.js";
3
+ import { B as i } from "../../config-Behl5hcc.js";
4
4
  import "../../hooks/useWalletBalance.js";
5
5
  import "../../utils/intents/getTokenBalanceKey.js";
6
6
  export {
@@ -3,7 +3,7 @@ import "../../logger.js";
3
3
  import "../../utils/ton/getTonTokenBalance.js";
4
4
  import "../../utils/solana/getSolanaTokenBalance.js";
5
5
  import "../../hooks/useWalletAddressForToken.js";
6
- import { A as x } from "../../config-Bmc4hOIl.js";
6
+ import { D as x } from "../../config-Behl5hcc.js";
7
7
  import "../../utils/evm/isEvmChain.js";
8
8
  import "../../utils/evm/isEvmToken.js";
9
9
  import "../../utils/evm/isEvmBaseToken.js";
@@ -5,7 +5,7 @@ import { AnimatePresence as S, motion as T } from "framer-motion";
5
5
  import * as g from "lucide-react";
6
6
  import { ChainItem as p } from "./ChainItem.js";
7
7
  import { AllNetworksIcon as d } from "./AllNetworksIcon.js";
8
- import { d as z, y as E } from "../../config-Bmc4hOIl.js";
8
+ import { d as z, y as E } from "../../config-Behl5hcc.js";
9
9
  import { Hr as j } from "../../components/Hr.js";
10
10
  import { Icon as o } from "../../components/Icon.js";
11
11
  import { CHAINS_LIST as y } from "../../constants/chains.js";
@@ -1,47 +1,44 @@
1
- import { jsxs as s, jsx as e } from "react/jsx-runtime";
2
- import * as o from "lucide-react";
3
- import { useMemo as p } from "react";
4
- import { cn as c } from "../utils/cn.js";
5
- import { Card as d } from "../components/Card.js";
6
- import { Button as a } from "../components/Button.js";
7
- import { b as f } from "../config-Bmc4hOIl.js";
1
+ import { jsxs as r, jsx as t } from "react/jsx-runtime";
2
+ import * as i from "lucide-react";
3
+ import { cn as m } from "../utils/cn.js";
4
+ import { Card as p } from "../components/Card.js";
5
+ import { Button as s } from "../components/Button.js";
6
+ import { b as c } from "../config-Behl5hcc.js";
8
7
  import "ethers";
9
8
  import "../machine/machine.js";
10
- import { fireEvent as x } from "../machine/events/utils/fireEvent.js";
11
- const C = ({ children: i, className: l }) => {
12
- const { ctx: t } = f(), r = (n) => {
13
- x("depositTypeSet", { isExternal: n });
14
- }, m = p(() => t.isDepositFromExternalWallet ? { state: "default" } : { state: "disabled" }, [t.isDepositFromExternalWallet]);
15
- return /* @__PURE__ */ s(d, { className: c("gap-sw-2xl p-sw-2xl flex flex-col", l), children: [
16
- /* @__PURE__ */ e("span", { className: "text-sw-label-md text-sw-gray-50", children: "Select deposit method" }),
17
- /* @__PURE__ */ s("div", { className: "flex gap-sw-lg", children: [
18
- /* @__PURE__ */ e(
19
- a,
9
+ import { fireEvent as d } from "../machine/events/utils/fireEvent.js";
10
+ const v = ({ children: l, className: a }) => {
11
+ const { ctx: e } = c(), o = (n) => {
12
+ d("depositTypeSet", { isExternal: n });
13
+ };
14
+ return /* @__PURE__ */ r(p, { className: m("gap-sw-2xl p-sw-2xl flex flex-col", a), children: [
15
+ /* @__PURE__ */ t("span", { className: "text-sw-label-md text-sw-gray-50", children: "Select deposit method" }),
16
+ /* @__PURE__ */ r("div", { className: "flex gap-sw-lg", children: [
17
+ /* @__PURE__ */ t(
18
+ s,
20
19
  {
21
20
  size: "md",
22
- variant: "primary",
23
- icon: o.Wallet2,
24
- onClick: () => r(!1),
25
- ...t.isDepositFromExternalWallet ? { state: "active" } : { state: "default" },
21
+ icon: i.Wallet2,
22
+ variant: e.isDepositFromExternalWallet ? "outlined" : "primary",
23
+ onClick: () => o(!1),
26
24
  children: "My wallet"
27
25
  }
28
26
  ),
29
- /* @__PURE__ */ e(
30
- a,
27
+ /* @__PURE__ */ t(
28
+ s,
31
29
  {
32
30
  size: "md",
33
- variant: "primary",
34
- icon: o.QrCode,
35
- onClick: () => r(!0),
36
- ...m,
31
+ icon: i.QrCode,
32
+ variant: e.isDepositFromExternalWallet ? "primary" : "outlined",
33
+ onClick: () => o(!0),
37
34
  children: "QR / Address"
38
35
  }
39
36
  )
40
37
  ] }),
41
- i({ isExternal: t.isDepositFromExternalWallet })
38
+ l({ isExternal: e.isDepositFromExternalWallet })
42
39
  ] });
43
40
  };
44
41
  export {
45
- C as DepositMethodSwitcher
42
+ v as DepositMethodSwitcher
46
43
  };
47
44
  //# sourceMappingURL=DepositMethodSwitcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DepositMethodSwitcher.js","sources":["../../src/features/DepositMethodSwitcher.tsx"],"sourcesContent":["import * as Icons from 'lucide-react';\nimport { useMemo } from 'react';\nimport { cn } from '@/utils/cn';\nimport { Card } from '@/components/Card';\nimport { Button } from '@/components/Button';\nimport { useUnsafeSnapshot } from '@/machine/snap';\nimport { fireEvent } from '@/machine';\n\ntype Props = {\n className?: string;\n children: ({ isExternal }: { isExternal: boolean }) => React.ReactNode;\n};\n\nexport const DepositMethodSwitcher = ({ children, className }: Props) => {\n const { ctx } = useUnsafeSnapshot();\n\n const onToggle = (isExternal: boolean) => {\n fireEvent('depositTypeSet', { isExternal });\n };\n\n const state = useMemo(() => {\n if (ctx.isDepositFromExternalWallet) {\n return { state: 'default' as const };\n }\n\n return { state: 'disabled' as const };\n }, [ctx.isDepositFromExternalWallet]);\n\n return (\n <Card className={cn('gap-sw-2xl p-sw-2xl flex flex-col', className)}>\n <span className=\"text-sw-label-md text-sw-gray-50\">\n Select deposit method\n </span>\n <div className=\"flex gap-sw-lg\">\n <Button\n size=\"md\"\n variant=\"primary\"\n icon={Icons.Wallet2}\n onClick={() => onToggle(false)}\n {...(!ctx.isDepositFromExternalWallet\n ? { state: 'default' }\n : { state: 'active' })}>\n My wallet\n </Button>\n <Button\n size=\"md\"\n variant=\"primary\"\n icon={Icons.QrCode}\n onClick={() => onToggle(true)}\n {...state}>\n QR / Address\n </Button>\n </div>\n\n {children({ isExternal: ctx.isDepositFromExternalWallet })}\n </Card>\n );\n};\n"],"names":["DepositMethodSwitcher","children","className","ctx","useUnsafeSnapshot","onToggle","isExternal","fireEvent","state","useMemo","Card","cn","jsx","jsxs","Button","Icons"],"mappings":";;;;;;;;;;AAaO,MAAMA,IAAwB,CAAC,EAAE,UAAAC,GAAU,WAAAC,QAAuB;AACvE,QAAM,EAAE,KAAAC,EAAA,IAAQC,EAAA,GAEVC,IAAW,CAACC,MAAwB;AACxC,IAAAC,EAAU,kBAAkB,EAAE,YAAAD,GAAY;AAAA,EAC5C,GAEME,IAAQC,EAAQ,MAChBN,EAAI,8BACC,EAAE,OAAO,UAAA,IAGX,EAAE,OAAO,WAAA,GACf,CAACA,EAAI,2BAA2B,CAAC;AAEpC,2BACGO,GAAA,EAAK,WAAWC,EAAG,qCAAqCT,CAAS,GAChE,UAAA;AAAA,IAAA,gBAAAU,EAAC,QAAA,EAAK,WAAU,oCAAmC,UAAA,yBAEnD;AAAA,IACA,gBAAAC,EAAC,OAAA,EAAI,WAAU,kBACb,UAAA;AAAA,MAAA,gBAAAD;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,SAAQ;AAAA,UACR,MAAMC,EAAM;AAAA,UACZ,SAAS,MAAMV,EAAS,EAAK;AAAA,UAC5B,GAAKF,EAAI,8BAEN,EAAE,OAAO,SAAA,IADT,EAAE,OAAO;UACa,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAG5B,gBAAAS;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,SAAQ;AAAA,UACR,MAAMC,EAAM;AAAA,UACZ,SAAS,MAAMV,EAAS,EAAI;AAAA,UAC3B,GAAGG;AAAA,UAAO,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAEb,GACF;AAAA,IAECP,EAAS,EAAE,YAAYE,EAAI,6BAA6B;AAAA,EAAA,GAC3D;AAEJ;"}
1
+ {"version":3,"file":"DepositMethodSwitcher.js","sources":["../../src/features/DepositMethodSwitcher.tsx"],"sourcesContent":["import * as Icons from 'lucide-react';\n\nimport { cn } from '@/utils/cn';\nimport { Card } from '@/components/Card';\nimport { Button } from '@/components/Button';\nimport { useUnsafeSnapshot } from '@/machine/snap';\nimport { fireEvent } from '@/machine';\n\ntype Props = {\n className?: string;\n children: ({ isExternal }: { isExternal: boolean }) => React.ReactNode;\n};\n\nexport const DepositMethodSwitcher = ({ children, className }: Props) => {\n const { ctx } = useUnsafeSnapshot();\n\n const onToggle = (isExternal: boolean) => {\n fireEvent('depositTypeSet', { isExternal });\n };\n\n return (\n <Card className={cn('gap-sw-2xl p-sw-2xl flex flex-col', className)}>\n <span className=\"text-sw-label-md text-sw-gray-50\">\n Select deposit method\n </span>\n <div className=\"flex gap-sw-lg\">\n <Button\n size=\"md\"\n icon={Icons.Wallet2}\n variant={ctx.isDepositFromExternalWallet ? 'outlined' : 'primary'}\n onClick={() => onToggle(false)}>\n My wallet\n </Button>\n <Button\n size=\"md\"\n icon={Icons.QrCode}\n variant={ctx.isDepositFromExternalWallet ? 'primary' : 'outlined'}\n onClick={() => onToggle(true)}>\n QR / Address\n </Button>\n </div>\n\n {children({ isExternal: ctx.isDepositFromExternalWallet })}\n </Card>\n );\n};\n"],"names":["DepositMethodSwitcher","children","className","ctx","useUnsafeSnapshot","onToggle","isExternal","fireEvent","Card","cn","jsx","jsxs","Button","Icons"],"mappings":";;;;;;;;;AAaO,MAAMA,IAAwB,CAAC,EAAE,UAAAC,GAAU,WAAAC,QAAuB;AACvE,QAAM,EAAE,KAAAC,EAAA,IAAQC,EAAA,GAEVC,IAAW,CAACC,MAAwB;AACxC,IAAAC,EAAU,kBAAkB,EAAE,YAAAD,GAAY;AAAA,EAC5C;AAEA,2BACGE,GAAA,EAAK,WAAWC,EAAG,qCAAqCP,CAAS,GAChE,UAAA;AAAA,IAAA,gBAAAQ,EAAC,QAAA,EAAK,WAAU,oCAAmC,UAAA,yBAEnD;AAAA,IACA,gBAAAC,EAAC,OAAA,EAAI,WAAU,kBACb,UAAA;AAAA,MAAA,gBAAAD;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,MAAMC,EAAM;AAAA,UACZ,SAASV,EAAI,8BAA8B,aAAa;AAAA,UACxD,SAAS,MAAME,EAAS,EAAK;AAAA,UAAG,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,MAGlC,gBAAAK;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,MAAMC,EAAM;AAAA,UACZ,SAASV,EAAI,8BAA8B,YAAY;AAAA,UACvD,SAAS,MAAME,EAAS,EAAI;AAAA,UAAG,UAAA;AAAA,QAAA;AAAA,MAAA;AAAA,IAEjC,GACF;AAAA,IAECJ,EAAS,EAAE,YAAYE,EAAI,6BAA6B;AAAA,EAAA,GAC3D;AAEJ;"}
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react-error-boundary";
3
- import { ac as p } from "../config-Bmc4hOIl.js";
3
+ import { ah as p } from "../config-Behl5hcc.js";
4
4
  export {
5
5
  p as ErrorBoundary
6
6
  };
@@ -1,8 +1,8 @@
1
1
  import { jsx as t, jsxs as c } from "react/jsx-runtime";
2
- import { useEffect as N } from "react";
3
- import { QRCodeSVG as g } from "qrcode.react";
2
+ import { useEffect as w } from "react";
3
+ import { QRCodeSVG as N } from "qrcode.react";
4
4
  import { GetExecutionStatusResponse as e } from "@defuse-protocol/one-click-sdk-typescript";
5
- import * as w from "lucide-react";
5
+ import * as g from "lucide-react";
6
6
  import { isNotEmptyAmount as T } from "../utils/checkers/isNotEmptyAmount.js";
7
7
  import { CHAIN_IDS_MAP as h } from "../constants/chains.js";
8
8
  import "viem";
@@ -12,7 +12,7 @@ import { formatAddressTruncate as _ } from "../utils/formatters/formatAddressTru
12
12
  import "../utils/cn.js";
13
13
  import { notReachable as l } from "../utils/notReachable.js";
14
14
  import "@tanstack/react-query";
15
- import { b as E, u as I } from "../config-Bmc4hOIl.js";
15
+ import { b as E, u as I } from "../config-Behl5hcc.js";
16
16
  import { guardStates as k } from "../machine/guards/index.js";
17
17
  import { moveTo as A } from "../machine/machine.js";
18
18
  import { fireEvent as o } from "../machine/events/utils/fireEvent.js";
@@ -35,43 +35,42 @@ import { CopyButton as R } from "../components/CopyButton.js";
35
35
  import "../components/InputAmount.js";
36
36
  import "../components/Notes.js";
37
37
  import { StatusWidget as n } from "../components/StatusWidget.js";
38
- import "../theme/ThemeProvider.js";
39
- const f = ({ address: s }) => /* @__PURE__ */ c("div", { className: "flex flex-col gap-sw-2xl items-center", children: [
40
- /* @__PURE__ */ t("div", { className: "p-sw-lg m-sw-lg mx-auto w-fit rounded-md bg-white", children: /* @__PURE__ */ t(g, { size: 156, value: s, fgColor: "#31343d" }) }),
41
- /* @__PURE__ */ c("div", { className: "py-sw-lg px-sw-lg w-full flex items-center justify-between rounded-md bg-sw-gray-600", children: [
42
- /* @__PURE__ */ t("span", { className: "text-sw-label-md text-sw-gray-100", children: _(s, 42) }),
43
- /* @__PURE__ */ t(R, { value: s })
38
+ const f = ({ address: r }) => /* @__PURE__ */ c("div", { className: "flex flex-col gap-sw-2xl items-center", children: [
39
+ /* @__PURE__ */ t("div", { className: "p-sw-lg m-sw-lg mx-auto w-fit rounded-sw-md bg-[#fff]", children: /* @__PURE__ */ t(N, { size: 156, value: r, fgColor: "#161926" }) }),
40
+ /* @__PURE__ */ c("div", { className: "py-sw-lg px-sw-lg w-full flex items-center justify-between rounded-sw-md bg-sw-gray-800", children: [
41
+ /* @__PURE__ */ t("span", { className: "text-sw-label-md text-sw-gray-100", children: _(r, 38) }),
42
+ /* @__PURE__ */ t(R, { value: r })
44
43
  ] })
45
44
  ] }), y = () => {
46
- const { t: s } = S(), { ctx: i } = E();
45
+ const { t: r } = S(), { ctx: i } = E();
47
46
  return /* @__PURE__ */ c("div", { className: "flex flex-col gap-sw-2xl items-center", children: [
48
- /* @__PURE__ */ t("div", { className: "bg-sw-gray-600 h-[180px] w-[180px] animate-pulse rounded-md" }),
49
- /* @__PURE__ */ c("div", { className: "bg-sw-gray-600 h-[44px] w-full animate-pulse rounded-md flex items-center justify-center gap-sw-sm", children: [
50
- /* @__PURE__ */ t(w.Loader, { className: "animate-spin text-sw-gray-100 h-sw-lg w-sw-lg" }),
51
- /* @__PURE__ */ t("span", { className: "text-sw-gray-100 text-sw-label-sm", children: T(i.sourceTokenAmount) ? s("deposit.external.loading.fetching", "Fetching new address") : s("deposit.external.loading.waiting", "Waiting for token amount") })
47
+ /* @__PURE__ */ t("div", { className: "bg-sw-gray-800 h-[180px] w-[180px] animate-pulse rounded-sw-md" }),
48
+ /* @__PURE__ */ c("div", { className: "bg-sw-gray-800 h-[44px] w-full animate-pulse rounded-sw-md flex items-center justify-center gap-sw-sm", children: [
49
+ /* @__PURE__ */ t(g.Loader, { className: "animate-spin text-sw-gray-100 h-sw-lg w-sw-lg" }),
50
+ /* @__PURE__ */ t("span", { className: "text-sw-gray-100 text-sw-label-sm", children: T(i.sourceTokenAmount) ? r("deposit.external.loading.fetching", "Fetching new address") : r("deposit.external.loading.waiting", "Waiting for token amount") })
52
51
  ] })
53
52
  ] });
54
- }, ft = ({ onMsg: s }) => {
55
- const { t: i } = S(), { ctx: r } = E(), { isNativeNearDeposit: m } = I(), p = k(r, [
53
+ }, lt = ({ onMsg: r }) => {
54
+ const { t: i } = S(), { ctx: s } = E(), { isNativeNearDeposit: m } = I(), p = k(s, [
56
55
  "quote_success_external",
57
56
  "quote_success_internal"
58
- ]), x = m && r.isDepositFromExternalWallet || !m && r.sourceToken?.assetId === r.targetToken?.assetId, a = b({
59
- depositAddress: p ? r.quote.depositAddress : "",
57
+ ]), x = m && s.isDepositFromExternalWallet || !m && s.sourceToken?.assetId === s.targetToken?.assetId, a = b({
58
+ depositAddress: p ? s.quote.depositAddress : "",
60
59
  depositAddressType: x ? "poa" : "one_click"
61
60
  });
62
- if (N(() => {
61
+ if (w(() => {
63
62
  const d = a.data?.status;
64
63
  if (a.data)
65
64
  switch (d) {
66
65
  case e.status.SUCCESS: {
67
66
  const u = a.data.swapDetails.destinationChainTxHashes[0]?.hash;
68
- o("transferSetStatus", { status: "success" }), A("transfer_success"), s({
67
+ o("transferSetStatus", { status: "success" }), A("transfer_success"), r({
69
68
  type: "on_successful_transfer",
70
69
  transferResult: {
71
70
  hash: u ?? "",
72
71
  intent: a.data.swapDetails.intentHashes[0],
73
- transactionLink: (r.sourceToken && u && D(
74
- h[r.sourceToken.blockchain],
72
+ transactionLink: (s.sourceToken && u && D(
73
+ h[s.sourceToken.blockchain],
75
74
  u
76
75
  )) ?? ""
77
76
  }
@@ -89,7 +88,7 @@ const f = ({ address: s }) => /* @__PURE__ */ c("div", { className: "flex flex-c
89
88
  break;
90
89
  case e.status.PROCESSING:
91
90
  case e.status.KNOWN_DEPOSIT_TX:
92
- o("externalDepositTxSet", !0), s({ type: "on_transaction_received" });
91
+ o("externalDepositTxSet", !0), r({ type: "on_transaction_received" });
93
92
  break;
94
93
  case e.status.PENDING_DEPOSIT:
95
94
  case void 0:
@@ -97,10 +96,10 @@ const f = ({ address: s }) => /* @__PURE__ */ c("div", { className: "flex flex-c
97
96
  default:
98
97
  l(d);
99
98
  }
100
- }, [a.data, r.sourceToken, s]), !p)
99
+ }, [a.data, s.sourceToken]), !p)
101
100
  return /* @__PURE__ */ t(y, {});
102
101
  if (!a.data)
103
- return /* @__PURE__ */ t(f, { address: r.quote.depositAddress });
102
+ return /* @__PURE__ */ t(f, { address: s.quote.depositAddress });
104
103
  switch (a.status) {
105
104
  case "error":
106
105
  return /* @__PURE__ */ t(
@@ -148,7 +147,7 @@ const f = ({ address: s }) => /* @__PURE__ */ c("div", { className: "flex flex-c
148
147
  case e.status.KNOWN_DEPOSIT_TX:
149
148
  return /* @__PURE__ */ t(n.Success, {});
150
149
  case e.status.PENDING_DEPOSIT:
151
- return /* @__PURE__ */ t(f, { address: r.quote.depositAddress });
150
+ return /* @__PURE__ */ t(f, { address: s.quote.depositAddress });
152
151
  case e.status.SUCCESS:
153
152
  return /* @__PURE__ */ t(n.Success, {});
154
153
  default:
@@ -159,6 +158,6 @@ const f = ({ address: s }) => /* @__PURE__ */ c("div", { className: "flex flex-c
159
158
  }
160
159
  };
161
160
  export {
162
- ft as ExternalDeposit
161
+ lt as ExternalDeposit
163
162
  };
164
163
  //# sourceMappingURL=ExternalDeposit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExternalDeposit.js","sources":["../../src/features/ExternalDeposit.tsx"],"sourcesContent":["import { useEffect } from 'react';\nimport { QRCodeSVG } from 'qrcode.react';\nimport { GetExecutionStatusResponse } from '@defuse-protocol/one-click-sdk-typescript';\nimport * as Icons from 'lucide-react';\n\nimport { notReachable } from '@/utils';\nimport { CHAIN_IDS_MAP } from '@/constants/chains';\nimport { useExternalDepositStatus } from '@/hooks';\nimport { useTypedTranslation } from '@/localisation';\nimport { CopyButton, StatusWidget } from '@/components';\nimport {\n fireEvent,\n guardStates,\n moveTo,\n useComputedSnapshot,\n useUnsafeSnapshot,\n} from '@/machine';\nimport { formatAddressTruncate } from '@/utils/formatters/formatAddressTruncate';\nimport { getTransactionLink } from '@/utils/formatters/getTransactionLink';\nimport { isNotEmptyAmount } from '@/utils/checkers/isNotEmptyAmount';\nimport type { TransferResult } from '@/types';\n\ntype Msg =\n | { type: 'on_transaction_received' }\n | { type: 'on_successful_transfer'; transferResult: TransferResult };\n\ntype Props = {\n onMsg: (msg: Msg) => void;\n};\n\nconst QrCode = ({ address }: { address: string }) => (\n <div className=\"flex flex-col gap-sw-2xl items-center\">\n <div className=\"p-sw-lg m-sw-lg mx-auto w-fit rounded-md bg-white\">\n <QRCodeSVG size={156} value={address} fgColor=\"#31343d\" />\n </div>\n <div className=\"py-sw-lg px-sw-lg w-full flex items-center justify-between rounded-md bg-sw-gray-600\">\n <span className=\"text-sw-label-md text-sw-gray-100\">\n {formatAddressTruncate(address, 42)}\n </span>\n <CopyButton value={address} />\n </div>\n </div>\n);\n\nconst Skeleton = () => {\n const { t } = useTypedTranslation();\n const { ctx } = useUnsafeSnapshot();\n\n return (\n <div className=\"flex flex-col gap-sw-2xl items-center\">\n <div className=\"bg-sw-gray-600 h-[180px] w-[180px] animate-pulse rounded-md\" />\n <div className=\"bg-sw-gray-600 h-[44px] w-full animate-pulse rounded-md flex items-center justify-center gap-sw-sm\">\n <Icons.Loader className=\"animate-spin text-sw-gray-100 h-sw-lg w-sw-lg\" />\n <span className=\"text-sw-gray-100 text-sw-label-sm\">\n {!isNotEmptyAmount(ctx.sourceTokenAmount)\n ? t('deposit.external.loading.waiting', 'Waiting for token amount')\n : t('deposit.external.loading.fetching', 'Fetching new address')}\n </span>\n </div>\n </div>\n );\n};\n\nexport const ExternalDeposit = ({ onMsg }: Props) => {\n const { t } = useTypedTranslation();\n const { ctx } = useUnsafeSnapshot();\n const { isNativeNearDeposit } = useComputedSnapshot();\n\n const isValidState = guardStates(ctx, [\n 'quote_success_external',\n 'quote_success_internal',\n ]);\n\n const isBridgePoaDeposit =\n (isNativeNearDeposit && ctx.isDepositFromExternalWallet) ||\n (!isNativeNearDeposit &&\n ctx.sourceToken?.assetId === ctx.targetToken?.assetId);\n\n const depositStatusQuery = useExternalDepositStatus({\n depositAddress: isValidState ? ctx.quote.depositAddress : '',\n depositAddressType: isBridgePoaDeposit ? 'poa' : 'one_click',\n });\n\n useEffect(() => {\n const status = depositStatusQuery.data?.status;\n\n if (!depositStatusQuery.data) {\n return;\n }\n\n switch (status) {\n case GetExecutionStatusResponse.status.SUCCESS: {\n const txHash =\n depositStatusQuery.data.swapDetails.destinationChainTxHashes[0]?.hash;\n\n fireEvent('transferSetStatus', { status: 'success' });\n moveTo('transfer_success');\n\n onMsg({\n type: 'on_successful_transfer',\n transferResult: {\n hash: txHash ?? '',\n intent: depositStatusQuery.data.swapDetails.intentHashes[0],\n transactionLink:\n (ctx.sourceToken &&\n txHash &&\n getTransactionLink(\n CHAIN_IDS_MAP[ctx.sourceToken.blockchain],\n txHash,\n )) ??\n '',\n },\n });\n break;\n }\n\n case GetExecutionStatusResponse.status.FAILED:\n fireEvent('transferSetStatus', { status: 'error' });\n fireEvent('errorSet', { code: 'EXTERNAL_TRANSFER_FAILED' });\n break;\n case GetExecutionStatusResponse.status.INCOMPLETE_DEPOSIT:\n fireEvent('transferSetStatus', { status: 'error' });\n fireEvent('errorSet', { code: 'EXTERNAL_TRANSFER_INCOMPLETE' });\n break;\n case GetExecutionStatusResponse.status.REFUNDED:\n fireEvent('transferSetStatus', { status: 'error' });\n fireEvent('errorSet', { code: 'EXTERNAL_TRANSFER_REFUNDED' });\n break;\n case GetExecutionStatusResponse.status.PROCESSING:\n case GetExecutionStatusResponse.status.KNOWN_DEPOSIT_TX:\n // Transaction was received from external wallet\n fireEvent('externalDepositTxSet', true);\n onMsg({ type: 'on_transaction_received' });\n break;\n case GetExecutionStatusResponse.status.PENDING_DEPOSIT:\n case undefined:\n // No action needed - waiting for deposit\n break;\n default:\n notReachable(status);\n }\n }, [depositStatusQuery.data, ctx.sourceToken, onMsg]);\n\n if (!isValidState) {\n return <Skeleton />;\n }\n\n if (!depositStatusQuery.data) {\n return <QrCode address={ctx.quote.depositAddress} />;\n }\n\n switch (depositStatusQuery.status) {\n case 'error':\n return (\n <StatusWidget.Error\n message={t(\n 'deposit.external.error.noStatus',\n 'Unable to check transfer status',\n )}\n />\n );\n\n case 'success': {\n switch (depositStatusQuery.data.status) {\n case GetExecutionStatusResponse.status.FAILED:\n return (\n <StatusWidget.Error\n message={t(\n 'deposit.external.error.noStatus',\n 'Unable to check transfer status',\n )}\n />\n );\n case GetExecutionStatusResponse.status.INCOMPLETE_DEPOSIT:\n return (\n <StatusWidget.Error\n message={t(\n 'deposit.external.error.incomplete',\n 'Incomplete deposit',\n )}\n />\n );\n case GetExecutionStatusResponse.status.REFUNDED:\n return (\n <StatusWidget.Error\n message={t(\n 'deposit.external.error.failed',\n 'Deposit failed. You were refunded.',\n )}\n />\n );\n case GetExecutionStatusResponse.status.PROCESSING:\n case GetExecutionStatusResponse.status.KNOWN_DEPOSIT_TX:\n return <StatusWidget.Success />;\n case GetExecutionStatusResponse.status.PENDING_DEPOSIT:\n return <QrCode address={ctx.quote.depositAddress} />;\n case GetExecutionStatusResponse.status.SUCCESS:\n return <StatusWidget.Success />;\n default:\n return null;\n }\n }\n\n default:\n return notReachable(depositStatusQuery);\n }\n};\n"],"names":["QrCode","address","jsxs","jsx","QRCodeSVG","formatAddressTruncate","CopyButton","Skeleton","t","useTypedTranslation","ctx","useUnsafeSnapshot","Icons","isNotEmptyAmount","ExternalDeposit","onMsg","isNativeNearDeposit","useComputedSnapshot","isValidState","guardStates","isBridgePoaDeposit","depositStatusQuery","useExternalDepositStatus","useEffect","status","GetExecutionStatusResponse","txHash","fireEvent","moveTo","getTransactionLink","CHAIN_IDS_MAP","notReachable","StatusWidget"],"mappings":"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"}
1
+ {"version":3,"file":"ExternalDeposit.js","sources":["../../src/features/ExternalDeposit.tsx"],"sourcesContent":["import { useEffect } from 'react';\nimport { QRCodeSVG } from 'qrcode.react';\nimport { GetExecutionStatusResponse } from '@defuse-protocol/one-click-sdk-typescript';\nimport * as Icons from 'lucide-react';\n\nimport { notReachable } from '@/utils';\nimport { CHAIN_IDS_MAP } from '@/constants/chains';\nimport { useExternalDepositStatus } from '@/hooks';\nimport { useTypedTranslation } from '@/localisation';\nimport { CopyButton, StatusWidget } from '@/components';\nimport {\n fireEvent,\n guardStates,\n moveTo,\n useComputedSnapshot,\n useUnsafeSnapshot,\n} from '@/machine';\nimport { formatAddressTruncate } from '@/utils/formatters/formatAddressTruncate';\nimport { getTransactionLink } from '@/utils/formatters/getTransactionLink';\nimport { isNotEmptyAmount } from '@/utils/checkers/isNotEmptyAmount';\nimport type { TransferResult } from '@/types';\n\ntype Msg =\n | { type: 'on_transaction_received' }\n | { type: 'on_successful_transfer'; transferResult: TransferResult };\n\ntype Props = {\n onMsg: (msg: Msg) => void;\n};\n\nconst QrCode = ({ address }: { address: string }) => (\n <div className=\"flex flex-col gap-sw-2xl items-center\">\n <div className=\"p-sw-lg m-sw-lg mx-auto w-fit rounded-sw-md bg-[#fff]\">\n <QRCodeSVG size={156} value={address} fgColor=\"#161926\" />\n </div>\n <div className=\"py-sw-lg px-sw-lg w-full flex items-center justify-between rounded-sw-md bg-sw-gray-800\">\n <span className=\"text-sw-label-md text-sw-gray-100\">\n {formatAddressTruncate(address, 38)}\n </span>\n <CopyButton value={address} />\n </div>\n </div>\n);\n\nconst Skeleton = () => {\n const { t } = useTypedTranslation();\n const { ctx } = useUnsafeSnapshot();\n\n return (\n <div className=\"flex flex-col gap-sw-2xl items-center\">\n <div className=\"bg-sw-gray-800 h-[180px] w-[180px] animate-pulse rounded-sw-md\" />\n <div className=\"bg-sw-gray-800 h-[44px] w-full animate-pulse rounded-sw-md flex items-center justify-center gap-sw-sm\">\n <Icons.Loader className=\"animate-spin text-sw-gray-100 h-sw-lg w-sw-lg\" />\n <span className=\"text-sw-gray-100 text-sw-label-sm\">\n {!isNotEmptyAmount(ctx.sourceTokenAmount)\n ? t('deposit.external.loading.waiting', 'Waiting for token amount')\n : t('deposit.external.loading.fetching', 'Fetching new address')}\n </span>\n </div>\n </div>\n );\n};\n\nexport const ExternalDeposit = ({ onMsg }: Props) => {\n const { t } = useTypedTranslation();\n const { ctx } = useUnsafeSnapshot();\n const { isNativeNearDeposit } = useComputedSnapshot();\n\n const isValidState = guardStates(ctx, [\n 'quote_success_external',\n 'quote_success_internal',\n ]);\n\n const isBridgePoaDeposit =\n (isNativeNearDeposit && ctx.isDepositFromExternalWallet) ||\n (!isNativeNearDeposit &&\n ctx.sourceToken?.assetId === ctx.targetToken?.assetId);\n\n const depositStatusQuery = useExternalDepositStatus({\n depositAddress: isValidState ? ctx.quote.depositAddress : '',\n depositAddressType: isBridgePoaDeposit ? 'poa' : 'one_click',\n });\n\n useEffect(() => {\n const status = depositStatusQuery.data?.status;\n\n if (!depositStatusQuery.data) {\n return;\n }\n\n switch (status) {\n case GetExecutionStatusResponse.status.SUCCESS: {\n const txHash =\n depositStatusQuery.data.swapDetails.destinationChainTxHashes[0]?.hash;\n\n fireEvent('transferSetStatus', { status: 'success' });\n moveTo('transfer_success');\n\n onMsg({\n type: 'on_successful_transfer',\n transferResult: {\n hash: txHash ?? '',\n intent: depositStatusQuery.data.swapDetails.intentHashes[0],\n transactionLink:\n (ctx.sourceToken &&\n txHash &&\n getTransactionLink(\n CHAIN_IDS_MAP[ctx.sourceToken.blockchain],\n txHash,\n )) ??\n '',\n },\n });\n break;\n }\n\n case GetExecutionStatusResponse.status.FAILED:\n fireEvent('transferSetStatus', { status: 'error' });\n fireEvent('errorSet', { code: 'EXTERNAL_TRANSFER_FAILED' });\n break;\n case GetExecutionStatusResponse.status.INCOMPLETE_DEPOSIT:\n fireEvent('transferSetStatus', { status: 'error' });\n fireEvent('errorSet', { code: 'EXTERNAL_TRANSFER_INCOMPLETE' });\n break;\n case GetExecutionStatusResponse.status.REFUNDED:\n fireEvent('transferSetStatus', { status: 'error' });\n fireEvent('errorSet', { code: 'EXTERNAL_TRANSFER_REFUNDED' });\n break;\n case GetExecutionStatusResponse.status.PROCESSING:\n case GetExecutionStatusResponse.status.KNOWN_DEPOSIT_TX:\n // Transaction was received from external wallet\n fireEvent('externalDepositTxSet', true);\n onMsg({ type: 'on_transaction_received' });\n break;\n case GetExecutionStatusResponse.status.PENDING_DEPOSIT:\n case undefined:\n // No action needed - waiting for deposit\n break;\n default:\n notReachable(status);\n }\n // do not include onMsg to avoid infinite loop\n }, [depositStatusQuery.data, ctx.sourceToken]);\n\n if (!isValidState) {\n return <Skeleton />;\n }\n\n if (!depositStatusQuery.data) {\n return <QrCode address={ctx.quote.depositAddress} />;\n }\n\n switch (depositStatusQuery.status) {\n case 'error':\n return (\n <StatusWidget.Error\n message={t(\n 'deposit.external.error.noStatus',\n 'Unable to check transfer status',\n )}\n />\n );\n\n case 'success': {\n switch (depositStatusQuery.data.status) {\n case GetExecutionStatusResponse.status.FAILED:\n return (\n <StatusWidget.Error\n message={t(\n 'deposit.external.error.noStatus',\n 'Unable to check transfer status',\n )}\n />\n );\n case GetExecutionStatusResponse.status.INCOMPLETE_DEPOSIT:\n return (\n <StatusWidget.Error\n message={t(\n 'deposit.external.error.incomplete',\n 'Incomplete deposit',\n )}\n />\n );\n case GetExecutionStatusResponse.status.REFUNDED:\n return (\n <StatusWidget.Error\n message={t(\n 'deposit.external.error.failed',\n 'Deposit failed. You were refunded.',\n )}\n />\n );\n case GetExecutionStatusResponse.status.PROCESSING:\n case GetExecutionStatusResponse.status.KNOWN_DEPOSIT_TX:\n return <StatusWidget.Success />;\n case GetExecutionStatusResponse.status.PENDING_DEPOSIT:\n return <QrCode address={ctx.quote.depositAddress} />;\n case GetExecutionStatusResponse.status.SUCCESS:\n return <StatusWidget.Success />;\n default:\n return null;\n }\n }\n\n default:\n return notReachable(depositStatusQuery);\n }\n};\n"],"names":["QrCode","address","jsxs","jsx","QRCodeSVG","formatAddressTruncate","CopyButton","Skeleton","t","useTypedTranslation","ctx","useUnsafeSnapshot","Icons","isNotEmptyAmount","ExternalDeposit","onMsg","isNativeNearDeposit","useComputedSnapshot","isValidState","guardStates","isBridgePoaDeposit","depositStatusQuery","useExternalDepositStatus","useEffect","status","GetExecutionStatusResponse","txHash","fireEvent","moveTo","getTransactionLink","CHAIN_IDS_MAP","notReachable","StatusWidget"],"mappings":"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"}
@@ -11,7 +11,7 @@ import "../../constants/chains.js";
11
11
  import "viem";
12
12
  import "ethers";
13
13
  import { cn as M } from "../../utils/cn.js";
14
- import { b as V, y as _ } from "../../config-Bmc4hOIl.js";
14
+ import { b as V, y as _ } from "../../config-Behl5hcc.js";
15
15
  import "../../machine/machine.js";
16
16
  import { fireEvent as d } from "../../machine/events/utils/fireEvent.js";
17
17
  import { useTypedTranslation as j } from "../../localisation.js";
@@ -1,5 +1,5 @@
1
1
  import { useMemo as o } from "react";
2
- import { b as d, y as l } from "../../config-Bmc4hOIl.js";
2
+ import { b as d, y as l } from "../../config-Behl5hcc.js";
3
3
  import { useTypedTranslation as c } from "../../localisation.js";
4
4
  import { getIntentsAccountId as u } from "../../utils/intents/getIntentsAccountId.js";
5
5
  import { CHAINS_LIST as f, EVM_CHAINS as m } from "../../constants/chains.js";
@@ -3,7 +3,7 @@ import "react-i18next";
3
3
  import "../../components/Button.js";
4
4
  import "../../components/TinyNumber.js";
5
5
  import "../../components/ErrorMessage.js";
6
- import { S as b } from "../../config-Bmc4hOIl.js";
6
+ import { S as b } from "../../config-Behl5hcc.js";
7
7
  import "../../localisation.js";
8
8
  import "../../utils/checkers/isNotEmptyAmount.js";
9
9
  export {
@@ -8,9 +8,9 @@ const f = ({
8
8
  hasCopyAction: a,
9
9
  externalUrl: t
10
10
  }) => /* @__PURE__ */ m("li", { className: "py-sw-md flex items-center justify-between", children: [
11
- /* @__PURE__ */ e("span", { className: "text-sw-label-s text-sw-gray-100", children: r }),
11
+ /* @__PURE__ */ e("span", { className: "text-sw-label-sm text-sw-gray-100", children: r }),
12
12
  /* @__PURE__ */ m("div", { className: "gap-sw-md flex items-center", children: [
13
- /* @__PURE__ */ e("span", { className: "text-sw-label-s text-sw-accent-300", children: l(s) }),
13
+ /* @__PURE__ */ e("span", { className: "text-sw-label-sm text-sw-accent-300", children: l(s) }),
14
14
  !!t && /* @__PURE__ */ e(c, { url: t }),
15
15
  a && /* @__PURE__ */ e(i, { value: s })
16
16
  ] })
@@ -1 +1 @@
1
- {"version":3,"file":"SummaryItem.js","sources":["../../../src/features/SuccessScreen/SummaryItem.tsx"],"sourcesContent":["import { ExternalAction } from './ExternalAction';\nimport { CopyButton } from '@/components/CopyButton';\nimport { formatTxHash } from '@/utils/formatters/formatTxHash';\n\ntype Props = {\n label: string;\n value: string;\n hasCopyAction?: boolean;\n externalUrl?: string;\n};\n\nexport const SummaryItem = ({\n label,\n value,\n hasCopyAction,\n externalUrl,\n}: Props) => (\n <li className=\"py-sw-md flex items-center justify-between\">\n <span className=\"text-sw-label-s text-sw-gray-100\">{label}</span>\n <div className=\"gap-sw-md flex items-center\">\n <span className=\"text-sw-label-s text-sw-accent-300\">\n {formatTxHash(value)}\n </span>\n {!!externalUrl && <ExternalAction url={externalUrl} />}\n {hasCopyAction && <CopyButton value={value} />}\n </div>\n </li>\n);\n"],"names":["SummaryItem","label","value","hasCopyAction","externalUrl","jsxs","jsx","formatTxHash","ExternalAction","CopyButton"],"mappings":";;;;AAWO,MAAMA,IAAc,CAAC;AAAA,EAC1B,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,eAAAC;AAAA,EACA,aAAAC;AACF,MACE,gBAAAC,EAAC,MAAA,EAAG,WAAU,8CACZ,UAAA;AAAA,EAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,oCAAoC,UAAAL,GAAM;AAAA,EAC1D,gBAAAI,EAAC,OAAA,EAAI,WAAU,+BACb,UAAA;AAAA,IAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,sCACb,UAAAC,EAAaL,CAAK,GACrB;AAAA,IACC,CAAC,CAACE,KAAe,gBAAAE,EAACE,GAAA,EAAe,KAAKJ,GAAa;AAAA,IACnDD,KAAiB,gBAAAG,EAACG,GAAA,EAAW,OAAAP,EAAA,CAAc;AAAA,EAAA,EAAA,CAC9C;AAAA,EAAA,CACF;"}
1
+ {"version":3,"file":"SummaryItem.js","sources":["../../../src/features/SuccessScreen/SummaryItem.tsx"],"sourcesContent":["import { ExternalAction } from './ExternalAction';\nimport { CopyButton } from '@/components/CopyButton';\nimport { formatTxHash } from '@/utils/formatters/formatTxHash';\n\ntype Props = {\n label: string;\n value: string;\n hasCopyAction?: boolean;\n externalUrl?: string;\n};\n\nexport const SummaryItem = ({\n label,\n value,\n hasCopyAction,\n externalUrl,\n}: Props) => (\n <li className=\"py-sw-md flex items-center justify-between\">\n <span className=\"text-sw-label-sm text-sw-gray-100\">{label}</span>\n <div className=\"gap-sw-md flex items-center\">\n <span className=\"text-sw-label-sm text-sw-accent-300\">\n {formatTxHash(value)}\n </span>\n {!!externalUrl && <ExternalAction url={externalUrl} />}\n {hasCopyAction && <CopyButton value={value} />}\n </div>\n </li>\n);\n"],"names":["SummaryItem","label","value","hasCopyAction","externalUrl","jsxs","jsx","formatTxHash","ExternalAction","CopyButton"],"mappings":";;;;AAWO,MAAMA,IAAc,CAAC;AAAA,EAC1B,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,eAAAC;AAAA,EACA,aAAAC;AACF,MACE,gBAAAC,EAAC,MAAA,EAAG,WAAU,8CACZ,UAAA;AAAA,EAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,qCAAqC,UAAAL,GAAM;AAAA,EAC3D,gBAAAI,EAAC,OAAA,EAAI,WAAU,+BACb,UAAA;AAAA,IAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,uCACb,UAAAC,EAAaL,CAAK,GACrB;AAAA,IACC,CAAC,CAACE,KAAe,gBAAAE,EAACE,GAAA,EAAe,KAAKJ,GAAa;AAAA,IACnDD,KAAiB,gBAAAG,EAACG,GAAA,EAAW,OAAAP,EAAA,CAAc;AAAA,EAAA,EAAA,CAC9C;AAAA,EAAA,CACF;"}
@@ -1,41 +1,41 @@
1
- import { jsxs as e, jsx as s, Fragment as d } from "react/jsx-runtime";
1
+ import { jsxs as e, jsx as s, Fragment as h } from "react/jsx-runtime";
2
2
  import { Fragment as u } from "react";
3
3
  import { CheckIcon as x } from "./CheckIcon.js";
4
- import { CloseButton as w } from "./CloseButton.js";
5
4
  import { SummaryItem as n } from "./SummaryItem.js";
6
- import { Hr as y } from "../../components/Hr.js";
7
- import { Card as b } from "../../components/Card.js";
8
- import { b as A } from "../../config-Bmc4hOIl.js";
5
+ import { Hr as w } from "../../components/Hr.js";
6
+ import { Card as y } from "../../components/Card.js";
7
+ import { CloseButton as b } from "../../components/CloseButton.js";
8
+ import { b as A } from "../../config-Behl5hcc.js";
9
9
  import "ethers";
10
10
  import "../../machine/machine.js";
11
11
  import { fireEvent as C } from "../../machine/events/utils/fireEvent.js";
12
12
  import { useTypedTranslation as N } from "../../localisation.js";
13
13
  const H = ({
14
- intent: t,
14
+ intent: l,
15
15
  transactionLink: m,
16
16
  hash: i,
17
17
  message: r,
18
18
  onMsg: c,
19
- hideHeader: p
19
+ hideHeader: f
20
20
  }) => {
21
- const { ctx: f } = A(), { t: l } = N(), a = Array.isArray(r) ? r : [r];
22
- return /* @__PURE__ */ e(b, { className: "w-full", children: [
23
- !p && /* @__PURE__ */ e(d, { children: [
21
+ const { ctx: p } = A(), { t } = N(), a = Array.isArray(r) ? r : [r];
22
+ return /* @__PURE__ */ e(y, { className: "w-full", children: [
23
+ !f && /* @__PURE__ */ e(h, { children: [
24
24
  /* @__PURE__ */ e("header", { className: "flex justify-between", children: [
25
25
  /* @__PURE__ */ s(x, {}),
26
- /* @__PURE__ */ s(w, { onClick: () => {
26
+ /* @__PURE__ */ s(b, { onClick: () => {
27
27
  C("reset", { clearWalletAddress: !1 }).moveTo(
28
- f.walletAddress ? "initial_wallet" : "initial_dry"
28
+ p.walletAddress ? "initial_wallet" : "initial_dry"
29
29
  ), c?.({ type: "on_dismiss_success" });
30
30
  } })
31
31
  ] }),
32
- /* @__PURE__ */ s("span", { className: "text-sw-label-l text-sw-gray-50", children: "All done" })
32
+ /* @__PURE__ */ s("span", { className: "text-sw-label-lg text-sw-gray-50", children: t("transfer.success.title", "All done!") })
33
33
  ] }),
34
- /* @__PURE__ */ s("p", { className: "mt-sw-sm text-sw-p-s text-sw-gray-100", children: a.map((h, o) => /* @__PURE__ */ e(u, { children: [
35
- h,
34
+ /* @__PURE__ */ s("p", { className: "mt-sw-sm text-sw-body-md text-sw-gray-400", children: a.map((d, o) => /* @__PURE__ */ e(u, { children: [
35
+ d,
36
36
  o !== a.length - 1 && /* @__PURE__ */ s("br", {})
37
37
  ] }, o)) }),
38
- /* @__PURE__ */ s(y, { className: "mt-sw-xl mb-sw-md" }),
38
+ /* @__PURE__ */ s(w, { className: "mt-sw-xl mb-sw-md" }),
39
39
  /* @__PURE__ */ e("ul", { className: "mt-sw-xl flex flex-col", children: [
40
40
  /* @__PURE__ */ s(
41
41
  n,
@@ -43,15 +43,15 @@ const H = ({
43
43
  hasCopyAction: !0,
44
44
  value: i,
45
45
  externalUrl: m,
46
- label: l("transfer.success.hash.label", "Transaction hash")
46
+ label: t("transfer.success.hash.label", "Transaction hash")
47
47
  }
48
48
  ),
49
- !!t && /* @__PURE__ */ s(
49
+ !!l && /* @__PURE__ */ s(
50
50
  n,
51
51
  {
52
52
  hasCopyAction: !0,
53
- label: l("transfer.success.intent.label", "Intent"),
54
- value: t
53
+ label: t("transfer.success.intent.label", "Intent"),
54
+ value: l
55
55
  }
56
56
  )
57
57
  ] })
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/features/SuccessScreen/index.tsx"],"sourcesContent":["import { Fragment } from 'react';\n\nimport { CheckIcon } from './CheckIcon';\nimport { CloseButton } from './CloseButton';\nimport { SummaryItem } from './SummaryItem';\nimport { Hr } from '@/components/Hr';\nimport { Card } from '@/components/Card';\nimport type { TransferResult } from '@/types/transfer';\n\nimport { fireEvent, useUnsafeSnapshot } from '@/machine';\nimport { useTypedTranslation } from '@/localisation';\n\ntype Msg = { type: 'on_dismiss_success' };\n\ntype Props = TransferResult & {\n message: string | string[];\n onMsg?: (msg: Msg) => void;\n hideHeader?: boolean;\n};\n\nexport const SuccessScreen = ({\n intent,\n transactionLink,\n hash: txHash,\n message,\n onMsg,\n hideHeader,\n}: Props) => {\n const { ctx } = useUnsafeSnapshot();\n const { t } = useTypedTranslation();\n const lines = Array.isArray(message) ? message : [message];\n\n const onDismiss = () => {\n fireEvent('reset', { clearWalletAddress: false }).moveTo(\n ctx.walletAddress ? 'initial_wallet' : 'initial_dry',\n );\n onMsg?.({ type: 'on_dismiss_success' });\n };\n\n return (\n <Card className=\"w-full\">\n {!hideHeader && (\n <>\n <header className=\"flex justify-between\">\n <CheckIcon />\n <CloseButton onClick={onDismiss} />\n </header>\n <span className=\"text-sw-label-l text-sw-gray-50\">All done</span>\n </>\n )}\n <p className=\"mt-sw-sm text-sw-p-s text-sw-gray-100\">\n {lines.map((line, idx) => (\n <Fragment key={idx}>\n {line}\n {idx !== lines.length - 1 && <br />}\n </Fragment>\n ))}\n </p>\n <Hr className=\"mt-sw-xl mb-sw-md\" />\n <ul className=\"mt-sw-xl flex flex-col\">\n <SummaryItem\n hasCopyAction\n value={txHash}\n externalUrl={transactionLink}\n label={t('transfer.success.hash.label', 'Transaction hash')}\n />\n {!!intent && (\n <SummaryItem\n hasCopyAction\n label={t('transfer.success.intent.label', 'Intent')}\n value={intent}\n />\n )}\n </ul>\n </Card>\n );\n};\n"],"names":["SuccessScreen","intent","transactionLink","txHash","message","onMsg","hideHeader","ctx","useUnsafeSnapshot","t","useTypedTranslation","lines","jsxs","Card","Fragment","jsx","CheckIcon","CloseButton","fireEvent","line","idx","Hr","SummaryItem"],"mappings":";;;;;;;;;;;;AAoBO,MAAMA,IAAgB,CAAC;AAAA,EAC5B,QAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,MAAMC;AAAA,EACN,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,YAAAC;AACF,MAAa;AACX,QAAM,EAAE,KAAAC,EAAA,IAAQC,EAAA,GACV,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACRC,IAAQ,MAAM,QAAQP,CAAO,IAAIA,IAAU,CAACA,CAAO;AASzD,SACE,gBAAAQ,EAACC,GAAA,EAAK,WAAU,UACb,UAAA;AAAA,IAAA,CAACP,KACA,gBAAAM,EAAAE,GAAA,EACE,UAAA;AAAA,MAAA,gBAAAF,EAAC,UAAA,EAAO,WAAU,wBAChB,UAAA;AAAA,QAAA,gBAAAG,EAACC,GAAA,EAAU;AAAA,QACX,gBAAAD,EAACE,GAAA,EAAY,SAbL,MAAM;AACtB,UAAAC,EAAU,SAAS,EAAE,oBAAoB,GAAA,CAAO,EAAE;AAAA,YAChDX,EAAI,gBAAgB,mBAAmB;AAAA,UAAA,GAEzCF,IAAQ,EAAE,MAAM,sBAAsB;AAAA,QACxC,EAQgC,CAAW;AAAA,MAAA,GACnC;AAAA,MACA,gBAAAU,EAAC,QAAA,EAAK,WAAU,mCAAkC,UAAA,WAAA,CAAQ;AAAA,IAAA,GAC5D;AAAA,IAEF,gBAAAA,EAAC,KAAA,EAAE,WAAU,yCACV,UAAAJ,EAAM,IAAI,CAACQ,GAAMC,MAChB,gBAAAR,EAACE,GAAA,EACE,UAAA;AAAA,MAAAK;AAAA,MACAC,MAAQT,EAAM,SAAS,uBAAM,MAAA,CAAA,CAAG;AAAA,IAAA,KAFpBS,CAGf,CACD,GACH;AAAA,IACA,gBAAAL,EAACM,GAAA,EAAG,WAAU,oBAAA,CAAoB;AAAA,IAClC,gBAAAT,EAAC,MAAA,EAAG,WAAU,0BACZ,UAAA;AAAA,MAAA,gBAAAG;AAAA,QAACO;AAAA,QAAA;AAAA,UACC,eAAa;AAAA,UACb,OAAOnB;AAAA,UACP,aAAaD;AAAA,UACb,OAAOO,EAAE,+BAA+B,kBAAkB;AAAA,QAAA;AAAA,MAAA;AAAA,MAE3D,CAAC,CAACR,KACD,gBAAAc;AAAA,QAACO;AAAA,QAAA;AAAA,UACC,eAAa;AAAA,UACb,OAAOb,EAAE,iCAAiC,QAAQ;AAAA,UAClD,OAAOR;AAAA,QAAA;AAAA,MAAA;AAAA,IACT,EAAA,CAEJ;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/features/SuccessScreen/index.tsx"],"sourcesContent":["import { Fragment } from 'react';\n\nimport { CheckIcon } from './CheckIcon';\nimport { SummaryItem } from './SummaryItem';\nimport { Hr } from '@/components/Hr';\nimport { Card } from '@/components/Card';\nimport { CloseButton } from '@/components/CloseButton';\nimport type { TransferResult } from '@/types/transfer';\n\nimport { fireEvent, useUnsafeSnapshot } from '@/machine';\nimport { useTypedTranslation } from '@/localisation';\n\ntype Msg = { type: 'on_dismiss_success' };\n\ntype Props = TransferResult & {\n message: string | string[];\n onMsg?: (msg: Msg) => void;\n hideHeader?: boolean;\n};\n\nexport const SuccessScreen = ({\n intent,\n transactionLink,\n hash: txHash,\n message,\n onMsg,\n hideHeader,\n}: Props) => {\n const { ctx } = useUnsafeSnapshot();\n const { t } = useTypedTranslation();\n const lines = Array.isArray(message) ? message : [message];\n\n const onDismiss = () => {\n fireEvent('reset', { clearWalletAddress: false }).moveTo(\n ctx.walletAddress ? 'initial_wallet' : 'initial_dry',\n );\n onMsg?.({ type: 'on_dismiss_success' });\n };\n\n return (\n <Card className=\"w-full\">\n {!hideHeader && (\n <>\n <header className=\"flex justify-between\">\n <CheckIcon />\n <CloseButton onClick={onDismiss} />\n </header>\n <span className=\"text-sw-label-lg text-sw-gray-50\">\n {t('transfer.success.title', 'All done!')}\n </span>\n </>\n )}\n <p className=\"mt-sw-sm text-sw-body-md text-sw-gray-400\">\n {lines.map((line, idx) => (\n <Fragment key={idx}>\n {line}\n {idx !== lines.length - 1 && <br />}\n </Fragment>\n ))}\n </p>\n <Hr className=\"mt-sw-xl mb-sw-md\" />\n <ul className=\"mt-sw-xl flex flex-col\">\n <SummaryItem\n hasCopyAction\n value={txHash}\n externalUrl={transactionLink}\n label={t('transfer.success.hash.label', 'Transaction hash')}\n />\n {!!intent && (\n <SummaryItem\n hasCopyAction\n label={t('transfer.success.intent.label', 'Intent')}\n value={intent}\n />\n )}\n </ul>\n </Card>\n );\n};\n"],"names":["SuccessScreen","intent","transactionLink","txHash","message","onMsg","hideHeader","ctx","useUnsafeSnapshot","useTypedTranslation","lines","jsxs","Card","Fragment","jsx","CheckIcon","CloseButton","fireEvent","line","idx","Hr","SummaryItem"],"mappings":";;;;;;;;;;;;AAoBO,MAAMA,IAAgB,CAAC;AAAA,EAC5B,QAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,MAAMC;AAAA,EACN,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,YAAAC;AACF,MAAa;AACX,QAAM,EAAE,KAAAC,EAAA,IAAQC,EAAA,GACV,EAAE,EAAA,IAAMC,EAAA,GACRC,IAAQ,MAAM,QAAQN,CAAO,IAAIA,IAAU,CAACA,CAAO;AASzD,SACE,gBAAAO,EAACC,GAAA,EAAK,WAAU,UACb,UAAA;AAAA,IAAA,CAACN,KACA,gBAAAK,EAAAE,GAAA,EACE,UAAA;AAAA,MAAA,gBAAAF,EAAC,UAAA,EAAO,WAAU,wBAChB,UAAA;AAAA,QAAA,gBAAAG,EAACC,GAAA,EAAU;AAAA,QACX,gBAAAD,EAACE,GAAA,EAAY,SAbL,MAAM;AACtB,UAAAC,EAAU,SAAS,EAAE,oBAAoB,GAAA,CAAO,EAAE;AAAA,YAChDV,EAAI,gBAAgB,mBAAmB;AAAA,UAAA,GAEzCF,IAAQ,EAAE,MAAM,sBAAsB;AAAA,QACxC,EAQgC,CAAW;AAAA,MAAA,GACnC;AAAA,wBACC,QAAA,EAAK,WAAU,oCACb,UAAA,EAAE,0BAA0B,WAAW,EAAA,CAC1C;AAAA,IAAA,GACF;AAAA,IAEF,gBAAAS,EAAC,KAAA,EAAE,WAAU,6CACV,UAAAJ,EAAM,IAAI,CAACQ,GAAMC,MAChB,gBAAAR,EAACE,GAAA,EACE,UAAA;AAAA,MAAAK;AAAA,MACAC,MAAQT,EAAM,SAAS,uBAAM,MAAA,CAAA,CAAG;AAAA,IAAA,KAFpBS,CAGf,CACD,GACH;AAAA,IACA,gBAAAL,EAACM,GAAA,EAAG,WAAU,oBAAA,CAAoB;AAAA,IAClC,gBAAAT,EAAC,MAAA,EAAG,WAAU,0BACZ,UAAA;AAAA,MAAA,gBAAAG;AAAA,QAACO;AAAA,QAAA;AAAA,UACC,eAAa;AAAA,UACb,OAAOlB;AAAA,UACP,aAAaD;AAAA,UACb,OAAO,EAAE,+BAA+B,kBAAkB;AAAA,QAAA;AAAA,MAAA;AAAA,MAE3D,CAAC,CAACD,KACD,gBAAAa;AAAA,QAACO;AAAA,QAAA;AAAA,UACC,eAAa;AAAA,UACb,OAAO,EAAE,iCAAiC,QAAQ;AAAA,UAClD,OAAOpB;AAAA,QAAA;AAAA,MAAA;AAAA,IACT,EAAA,CAEJ;AAAA,EAAA,GACF;AAEJ;"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
2
  import { DirectionSwitcher as r } from "../components/DirectionSwitcher.js";
3
- import { b as i } from "../config-Bmc4hOIl.js";
3
+ import { b as i } from "../config-Behl5hcc.js";
4
4
  import "ethers";
5
5
  import "../machine/machine.js";
6
6
  import { fireEvent as n } from "../machine/events/utils/fireEvent.js";
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "./SwapQuoteSkeleton.js";
3
- import { a1 as s } from "../../config-Bmc4hOIl.js";
3
+ import { a3 as s } from "../../config-Behl5hcc.js";
4
4
  import "../../components/Notes.js";
5
5
  import "../../components/Accordion.js";
6
6
  import "../../utils/formatters/formatUsdAmount.js";
@@ -1,4 +1,4 @@
1
- import { o as t } from "../../config-Bmc4hOIl.js";
1
+ import { o as t } from "../../config-Behl5hcc.js";
2
2
  import "./SwapQuoteSkeleton.js";
3
3
  export {
4
4
  t as SwapQuote
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { a3 as I } from "../../config-Bmc4hOIl.js";
3
+ import { a5 as I } from "../../config-Behl5hcc.js";
4
4
  import "./utils/getBalancePortion.js";
5
5
  import "./utils/getUsdDisplayAmount.js";
6
6
  import "./TokenInputHeading.js";
@@ -1,5 +1,5 @@
1
1
  import "react/jsx-runtime";
2
- import { a4 as f } from "../../config-Bmc4hOIl.js";
2
+ import { a6 as f } from "../../config-Behl5hcc.js";
3
3
  import "../../constants/chains.js";
4
4
  import "viem";
5
5
  import "ethers";
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { a6 as e } from "../../config-Bmc4hOIl.js";
3
+ import { a8 as e } from "../../config-Behl5hcc.js";
4
4
  import "../../utils/formatters/formatBigToHuman.js";
5
5
  export {
6
6
  e as TokenInputSource