@swype-org/react-sdk 0.1.192 → 0.1.202

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -2122,51 +2122,59 @@ function isMobileUserAgent(userAgent) {
2122
2122
  function shouldUseWalletConnector(options) {
2123
2123
  return options.useWalletConnector ?? !isMobileUserAgent(options.userAgent);
2124
2124
  }
2125
- var ACCENT = "#28b67a";
2126
- var BG_RING = "#d2e4ea";
2125
+ var MUTED = "#7fa4b0";
2126
+ var LOGO_SIZE = 48;
2127
2127
  function SwypeLoadingScreen() {
2128
2128
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: containerStyle, children: [
2129
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle, children: [
2130
- /* @__PURE__ */ jsxRuntime.jsx("p", { style: wordmarkStyle, children: "BLINK" }),
2131
- /* @__PURE__ */ jsxRuntime.jsx("div", { style: spinnerStyle })
2132
- ] }),
2129
+ /* @__PURE__ */ jsxRuntime.jsxs(
2130
+ "svg",
2131
+ {
2132
+ width: LOGO_SIZE,
2133
+ height: LOGO_SIZE,
2134
+ viewBox: "0 0 100 100",
2135
+ fill: "none",
2136
+ xmlns: "http://www.w3.org/2000/svg",
2137
+ style: { borderRadius: 10 },
2138
+ children: [
2139
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { clipPath: "url(#swype-loading-clip)", children: [
2140
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "100", height: "100", rx: "18.5874", fill: "white" }),
2141
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M64.0138 36.6191C68.3952 36.7025 70.2512 42.3038 65.1932 44.0399C61.4251 44.2617 60.8419 41.8557 61.3059 38.6113C62.3258 37.4916 62.6562 37.2326 64.0138 36.6191Z", fill: "white" }),
2142
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M34.7441 36.6714C36.6646 36.3309 38.4839 37.6898 38.813 39.71C39.1407 41.7302 37.8542 43.6499 35.9352 43.9994C34.7427 44.2169 33.5274 43.7774 32.7154 42.8325C31.8492 41.8262 31.5728 40.4029 31.9959 39.1191C32.419 37.8367 33.4719 36.8979 34.7441 36.6714Z", fill: "white" }),
2143
+ /* @__PURE__ */ jsxRuntime.jsx("g", { style: { transformOrigin: "50px 62px", animation: "swype-legs-walk 0.8s ease-in-out infinite" }, children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M37.719 72.0299C39.0372 70.605 40.611 68.9843 41.7888 67.4312L50.1528 61.6651L57.6601 61.4468C57.4965 63.5289 61.7342 75.3729 61.6981 77.5158C62.154 77.0628 63.0658 76.3318 63.567 75.9876C65.9954 74.3365 68.8384 73.8223 71.4833 74.5554C72.8167 74.9328 73.9331 75.9251 74.58 77.3075C75.2967 78.8451 75.3771 80.3207 74.9127 82.0281C73.8912 85.7844 71.5792 88.6365 68.624 90.5357C66.125 92.1415 61.7077 93.9276 58.9822 93.0828C58.078 92.7956 56.4567 92.015 55.9204 91.1399C55.1385 89.8648 54.5613 88.8907 54.1469 87.3736C53.3686 84.4709 53.3459 86.0793 52.7439 77.9085C52.8102 75.0919 52.9961 69.1199 52.9088 66.782C52.1044 67.8121 48.6686 72.1053 47.7896 73.7937L43.7186 79.5555C45.2316 79.4947 47.0626 79.5314 48.354 80.4535C49.2813 81.1277 49.9192 82.2144 50.1273 83.4755C50.2332 83.8294 50.3132 84.6855 50.3258 85.0634C50.4307 88.2051 49.4337 91.7462 46.8974 93.4764C45.8189 94.2126 44.2654 94.598 43.01 94.7341C37.9909 95.3115 33.0817 93.5835 29.3502 89.9257C28.3222 88.8994 27.4875 87.705 27.4333 86.0333C27.4046 85.1165 27.6099 84.1963 28.0241 83.3859C28.6301 82.2147 30.2471 80.3005 31.0794 79.3156C33.2057 76.7997 35.4975 74.4306 37.719 72.0299Z", fill: "black" }) }),
2144
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M25.2815 30.5666C25.6441 30.6182 25.869 30.0928 25.5864 29.8598C23.1701 27.868 21.5484 25.4469 21.0444 22.6545C20.3641 19.1251 21.516 15.5212 24.2422 12.6488C26.8514 9.91783 30.7518 8.12575 35.0552 7.68041C40.5681 7.11357 44.9544 9.44386 49.0355 11.908C49.1016 11.9479 49.1793 11.964 49.2559 11.9535L49.6641 11.8975C49.7772 11.882 49.8729 11.8099 49.9313 11.7118C50.7042 10.4132 53.3609 9.13558 54.9428 8.55183C63.274 5.47733 72.1015 8.67608 75.6217 15.0543C77.4169 18.3043 77.4637 21.9922 75.7515 25.2845C74.8719 26.99 73.8277 28.1868 72.3742 29.4156C72.1074 29.6412 72.3057 30.099 72.652 30.0534C78.3434 29.3036 83.6958 29.6535 88.1602 33.0995C88.1743 33.1104 88.1896 33.1204 88.2051 33.1289C94.9326 36.8336 95.4063 45.4019 90.8735 50.5016C88.6438 53.0434 85.3883 54.9193 81.641 55.8268C81.4786 55.8662 81.3675 56.017 81.3778 56.1837C81.627 60.2197 80.6407 63.7049 77.0957 66.8558C74.3594 69.31 72.2572 70.905 68.1242 71.1594C66.1317 71.2671 64.5824 71.0823 61.0405 69.4728C57.7759 67.9894 53.6996 61.9918 52.509 57.7058C52.4204 57.3871 51.9326 57.3204 51.7644 57.6052C49.4075 61.5961 43.2088 67.6787 38.7227 69.4728C35.1404 70.8919 32.2895 71.8779 28.5005 70.8789C24.3706 69.7951 20.9698 67.4623 19.0499 64.3964C18.0021 62.7282 16.7577 59.3144 17.4723 57.5087C17.4921 57.4587 17.5023 57.4056 17.4951 57.3522C17.4647 57.1259 17.359 56.7067 17.1377 56.6504C8.17592 54.367 2.58735 48.0815 5.03045 40.4013C6.14562 36.9784 8.95444 34.0395 12.8321 32.2381C16.7957 30.3763 20.9323 29.9475 25.2815 30.5666Z", fill: "black" }),
2145
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "44.3433", y: "56.4863", width: "10.1195", height: "9.10751", fill: "black" }),
2146
+ /* @__PURE__ */ jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M45.6929 25.6221C49.2323 25.6223 52.1021 31.512 52.1021 38.7773C52.102 46.0426 49.2323 51.9323 45.6929 51.9326C42.2373 51.9326 39.4213 46.3188 39.2896 39.292C41.4308 38.8166 43.9097 38.7264 46.1079 39.1299C47.0121 39.2956 47.8949 38.5389 47.4956 37.7109C46.0273 34.6668 42.4111 34.0327 39.686 34.1816C40.5942 29.1824 42.9408 25.6221 45.6929 25.6221Z", fill: "white" }),
2147
+ /* @__PURE__ */ jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M63.2471 25.6216C66.7865 25.6219 69.6562 31.5116 69.6562 38.7769C69.6562 46.0422 66.7865 51.9319 63.2471 51.9321C59.7916 51.9321 56.9756 46.319 56.8438 39.2925C58.985 38.8171 61.4639 38.7259 63.6621 39.1294C64.5663 39.2952 65.4491 38.5394 65.0498 37.7114C63.5816 34.6669 59.9654 34.0322 57.2402 34.1812C58.1484 29.1821 60.4951 25.6216 63.2471 25.6216Z", fill: "white" })
2148
+ ] }),
2149
+ /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsx("clipPath", { id: "swype-loading-clip", children: /* @__PURE__ */ jsxRuntime.jsx("rect", { width: "100", height: "100", rx: "18.5874", fill: "white" }) }) })
2150
+ ]
2151
+ }
2152
+ ),
2153
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: labelStyle, children: "Loading..." }),
2133
2154
  /* @__PURE__ */ jsxRuntime.jsx("style", { children: `
2134
- @keyframes swype-loading-spin {
2135
- to { transform: rotate(360deg); }
2155
+ @keyframes swype-legs-walk {
2156
+ 0%, 100% { transform: rotate(0deg); }
2157
+ 25% { transform: rotate(5deg); }
2158
+ 75% { transform: rotate(-5deg); }
2136
2159
  }
2137
2160
  ` })
2138
2161
  ] });
2139
2162
  }
2140
2163
  var containerStyle = {
2141
2164
  display: "flex",
2165
+ flexDirection: "column",
2142
2166
  alignItems: "center",
2143
2167
  justifyContent: "center",
2168
+ gap: 12,
2144
2169
  height: "100%",
2145
2170
  flex: 1,
2146
2171
  background: "transparent"
2147
2172
  };
2148
- var contentStyle = {
2149
- display: "flex",
2150
- flexDirection: "column",
2151
- alignItems: "center",
2152
- gap: 16
2153
- };
2154
- var wordmarkStyle = {
2155
- fontSize: 28,
2156
- fontWeight: 700,
2157
- letterSpacing: "-0.04em",
2158
- color: ACCENT,
2159
- margin: 0,
2160
- fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'
2161
- };
2162
- var spinnerStyle = {
2163
- width: 44,
2164
- height: 44,
2165
- border: `4px solid ${BG_RING}`,
2166
- borderTopColor: ACCENT,
2167
- borderRightColor: `${ACCENT}66`,
2168
- borderRadius: "50%",
2169
- animation: "swype-loading-spin 0.9s linear infinite"
2173
+ var labelStyle = {
2174
+ color: MUTED,
2175
+ fontSize: 13,
2176
+ fontFamily: "system-ui, -apple-system, sans-serif",
2177
+ letterSpacing: "0.02em"
2170
2178
  };
2171
2179
 
2172
2180
  // src/assets/logos.ts
@@ -2216,25 +2224,32 @@ var SWYPE_SVG = `<svg width="100" height="100" viewBox="0 0 100 100" fill="none"
2216
2224
  </clipPath>
2217
2225
  </defs>
2218
2226
  </svg>`;
2219
- var SWYPE_LOGO = svgToDataUri(SWYPE_SVG);
2220
- var SWYPE_MASCOT_SVG = `<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">
2221
- <path d="M64.0138 36.6191C68.3952 36.7025 70.2512 42.3038 65.1932 44.0399C61.4251 44.2617 60.8419 41.8557 61.3059 38.6113C62.3258 37.4916 62.6562 37.2326 64.0138 36.6191Z" fill="#1a5c2a"/>
2222
- <path d="M34.7441 36.6714C36.6646 36.3309 38.4839 37.6898 38.813 39.71C39.1407 41.7302 37.8542 43.6499 35.9352 43.9994C34.7427 44.2169 33.5274 43.7774 32.7154 42.8325C31.8492 41.8262 31.5728 40.4029 31.9959 39.1191C32.419 37.8367 33.4719 36.8979 34.7441 36.6714Z" fill="#1a5c2a"/>
2223
- <path d="M37.719 72.0299C39.0372 70.605 40.611 68.9843 41.7888 67.4312L50.1528 61.6651L57.6601 61.4468C57.4965 63.5289 61.7342 75.3729 61.6981 77.5158C62.154 77.0628 63.0658 76.3318 63.567 75.9876C65.9954 74.3365 68.8384 73.8223 71.4833 74.5554C72.8167 74.9328 73.9331 75.9251 74.58 77.3075C75.2967 78.8451 75.3771 80.3207 74.9127 82.0281C73.8912 85.7844 71.5792 88.6365 68.624 90.5357C66.125 92.1415 61.7077 93.9276 58.9822 93.0828C58.078 92.7956 56.4567 92.015 55.9204 91.1399C55.1385 89.8648 54.5613 88.8907 54.1469 87.3736C53.3686 84.4709 53.3459 86.0793 52.7439 77.9085C52.8102 75.0919 52.9961 69.1199 52.9088 66.782C52.1044 67.8121 48.6686 72.1053 47.7896 73.7937L43.7186 79.5555C45.2316 79.4947 47.0626 79.5314 48.354 80.4535C49.2813 81.1277 49.9192 82.2144 50.1273 83.4755C50.2332 83.8294 50.3132 84.6855 50.3258 85.0634C50.4307 88.2051 49.4337 91.7462 46.8974 93.4764C45.8189 94.2126 44.2654 94.598 43.01 94.7341C37.9909 95.3115 33.0817 93.5835 29.3502 89.9257C28.3222 88.8994 27.4875 87.705 27.4333 86.0333C27.4046 85.1165 27.6099 84.1963 28.0241 83.3859C28.6301 82.2147 30.2471 80.3005 31.0794 79.3156C33.2057 76.7997 35.4975 74.4306 37.719 72.0299Z" fill="#4ABA5A"/>
2224
- <path d="M25.2815 30.5666C25.6441 30.6182 25.869 30.0928 25.5864 29.8598C23.1701 27.868 21.5484 25.4469 21.0444 22.6545C20.3641 19.1251 21.516 15.5212 24.2422 12.6488C26.8514 9.91783 30.7518 8.12575 35.0552 7.68041C40.5681 7.11357 44.9544 9.44386 49.0355 11.908C49.1016 11.9479 49.1793 11.964 49.2559 11.9535L49.6641 11.8975C49.7772 11.882 49.8729 11.8099 49.9313 11.7118C50.7042 10.4132 53.3609 9.13558 54.9428 8.55183C63.274 5.47733 72.1015 8.67608 75.6217 15.0543C77.4169 18.3043 77.4637 21.9922 75.7515 25.2845C74.8719 26.99 73.8277 28.1868 72.3742 29.4156C72.1074 29.6412 72.3057 30.099 72.652 30.0534C78.3434 29.3036 83.6958 29.6535 88.1602 33.0995C88.1743 33.1104 88.1896 33.1204 88.2051 33.1289C94.9326 36.8336 95.4063 45.4019 90.8735 50.5016C88.6438 53.0434 85.3883 54.9193 81.641 55.8268C81.4786 55.8662 81.3675 56.017 81.3778 56.1837C81.627 60.2197 80.6407 63.7049 77.0957 66.8558C74.3594 69.31 72.2572 70.905 68.1242 71.1594C66.1317 71.2671 64.5824 71.0823 61.0405 69.4728C57.7759 67.9894 53.6996 61.9918 52.509 57.7058C52.4204 57.3871 51.9326 57.3204 51.7644 57.6052C49.4075 61.5961 43.2088 67.6787 38.7227 69.4728C35.1404 70.8919 32.2895 71.8779 28.5005 70.8789C24.3706 69.7951 20.9698 67.4623 19.0499 64.3964C18.0021 62.7282 16.7577 59.3144 17.4723 57.5087C17.4921 57.4587 17.5023 57.4056 17.4951 57.3522C17.4647 57.1259 17.359 56.7067 17.1377 56.6504C8.17592 54.367 2.58735 48.0815 5.03045 40.4013C6.14562 36.9784 8.95444 34.0395 12.8321 32.2381C16.7957 30.3763 20.9323 29.9475 25.2815 30.5666Z" fill="#4ABA5A"/>
2225
- <rect x="44.3433" y="56.4863" width="10.1195" height="9.10751" fill="#4ABA5A"/>
2226
- <path fill-rule="evenodd" clip-rule="evenodd" d="M45.6929 25.6221C49.2323 25.6223 52.1021 31.512 52.1021 38.7773C52.102 46.0426 49.2323 51.9323 45.6929 51.9326C42.2373 51.9326 39.4213 46.3188 39.2896 39.292C41.4308 38.8166 43.9097 38.7264 46.1079 39.1299C47.0121 39.2956 47.8949 38.5389 47.4956 37.7109C46.0273 34.6668 42.4111 34.0327 39.686 34.1816C40.5942 29.1824 42.9408 25.6221 45.6929 25.6221Z" fill="#1a5c2a"/>
2227
- <path fill-rule="evenodd" clip-rule="evenodd" d="M63.2471 25.6216C66.7865 25.6219 69.6562 31.5116 69.6562 38.7769C69.6562 46.0422 66.7865 51.9319 63.2471 51.9321C59.7916 51.9321 56.9756 46.319 56.8438 39.2925C58.985 38.8171 61.4639 38.7259 63.6621 39.1294C64.5663 39.2952 65.4491 38.5394 65.0498 37.7114C63.5816 34.6669 59.9654 34.0322 57.2402 34.1812C58.1484 29.1821 60.4951 25.6216 63.2471 25.6216Z" fill="#1a5c2a"/>
2227
+ var USDC_SVG = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2000 2000">
2228
+ <path d="M1000 2000c554.17 0 1000-445.83 1000-1000S1554.17 0 1000 0 0 445.83 0 1000s445.83 1000 1000 1000z" fill="#2775ca"/>
2229
+ <path d="M1275 1158.33c0-145.83-87.5-195.83-262.5-216.66-125-16.67-150-50-150-108.34s41.67-95.83 125-95.83c75 0 116.67 25 137.5 87.5 4.17 12.5 16.67 20.83 29.17 20.83h66.66c16.67 0 29.17-12.5 29.17-29.16v-4.17c-16.67-91.67-91.67-162.5-187.5-170.83v-100c0-16.67-12.5-29.17-33.33-33.34h-62.5c-16.67 0-29.17 12.5-33.34 33.34v95.83c-125 16.67-204.16 100-204.16 204.17 0 137.5 83.33 191.66 258.33 212.5 116.67 20.83 154.17 45.83 154.17 112.5s-58.34 112.5-137.5 112.5c-108.34 0-145.84-45.84-158.34-108.34-4.16-16.66-16.66-25-29.16-25h-70.84c-16.66 0-29.16 12.5-29.16 29.17v4.17c16.66 104.16 83.33 179.16 220.83 200v100c0 16.66 12.5 29.16 33.33 33.33h62.5c16.67 0 29.17-12.5 33.34-33.33v-100c125-20.84 208.33-108.34 208.33-220.84z" fill="#fff"/>
2230
+ <path d="M787.5 1595.83c-325-116.66-491.67-479.16-370.83-800 62.5-175 200-308.33 370.83-370.83 16.67-8.33 25-20.83 25-41.67V325c0-16.67-8.33-29.17-25-33.33-4.17 0-12.5 0-16.67 4.16-395.83 125-612.5 545.84-487.5 941.67 75 233.33 254.17 412.5 487.5 487.5 16.67 8.33 33.34 0 37.5-16.67 4.17-4.16 4.17-8.33 4.17-16.66v-58.34c0-12.5-12.5-29.16-25-37.5zM1229.17 295.83c-16.67-8.33-33.34 0-37.5 16.67-4.17 4.17-4.17 8.33-4.17 16.67v58.33c0 16.67 12.5 33.33 25 41.67 325 116.66 491.67 479.16 370.83 800-62.5 175-200 308.33-370.83 370.83-16.67 8.33-25 20.83-25 41.67V1700c0 16.67 8.33 29.17 25 33.33 4.17 0 12.5 0 16.67-4.16 395.83-125 612.5-545.84 487.5-941.67-75-237.5-258.34-416.67-487.5-491.67z" fill="#fff"/>
2228
2231
  </svg>`;
2229
- var SWYPE_MASCOT = svgToDataUri(SWYPE_MASCOT_SVG);
2232
+ var TETHER_SVG = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 800">
2233
+ <circle fill="#009393" cx="400" cy="400" r="400"/>
2234
+ <path fill="#fff" fill-rule="evenodd" d="M400.49,428.59c68.79,0,126.28-11.63,140.33-27.17-11.93-13.18-55.08-23.56-109.88-26.4v32.83c-9.81.51-20.01.76-30.46.76s-20.65-.25-30.48-.76v-32.83c-54.78,2.84-97.95,13.22-109.88,26.4,14.07,15.54,71.57,27.17,140.36,27.17ZM522.71,274.06v45.21h-91.77v31.35c64.46,3.35,112.83,17.13,113.19,33.62v34.38c-.36,16.49-48.73,30.24-113.19,33.6v76.94h-60.93v-76.94c-64.46-3.35-112.81-17.11-113.17-33.6v-34.38c.36-16.49,48.71-30.27,113.17-33.62v-31.35h-91.77v-45.21h244.48ZM242.15,202.11h322.16c7.7,0,14.79,4.05,18.63,10.63l93.85,161.16c4.86,8.36,3.42,18.91-3.52,25.68l-258.34,252.18c-8.38,8.17-21.84,8.17-30.2,0L126.71,399.92c-7.09-6.94-8.43-17.79-3.2-26.19l100.33-161.49c3.91-6.28,10.85-10.12,18.32-10.12Z"/>
2235
+ </svg>`;
2236
+ var SWYPE_LOGO = svgToDataUri(SWYPE_SVG);
2237
+ var SWYPE_MASCOT = SWYPE_LOGO;
2230
2238
  var BASE_LOGO = svgToDataUri(BASE_SVG);
2231
2239
  var METAMASK_LOGO = svgToDataUri(METAMASK_SVG);
2232
2240
  var TRUST_WALLET_LOGO = svgToDataUri(TRUST_WALLET_SVG);
2241
+ var USDC_LOGO = svgToDataUri(USDC_SVG);
2242
+ var TETHER_LOGO = svgToDataUri(TETHER_SVG);
2233
2243
  var KNOWN_LOGOS = {
2234
2244
  metamask: METAMASK_LOGO,
2235
2245
  base: BASE_LOGO,
2236
2246
  "trust wallet": TRUST_WALLET_LOGO
2237
2247
  };
2248
+ var TOKEN_LOGOS = {
2249
+ USDC: USDC_LOGO,
2250
+ "USDC.e": USDC_LOGO,
2251
+ USDT: TETHER_LOGO
2252
+ };
2238
2253
  var FOOTER_CSS = `
2239
2254
  .swype-screen-footer {
2240
2255
  padding-bottom: max(32px, env(safe-area-inset-bottom, 32px));
@@ -2285,17 +2300,17 @@ function useFlowPhase() {
2285
2300
  function StepProgress({ phase }) {
2286
2301
  const { tokens } = useSwypeConfig();
2287
2302
  if (phase === "deposit") {
2288
- return /* @__PURE__ */ jsxRuntime.jsx("img", { src: SWYPE_MASCOT, alt: "Swype", style: mascotStyle });
2303
+ return /* @__PURE__ */ jsxRuntime.jsx("img", { src: SWYPE_LOGO, alt: "Swype", style: mascotStyle });
2289
2304
  }
2290
2305
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { style: containerStyle3, children: [
2291
2306
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: sectionStyle("flex-end"), children: [
2292
- /* @__PURE__ */ jsxRuntime.jsx("span", { style: labelStyle(tokens.text), children: "Link" }),
2307
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: labelStyle2(tokens.text), children: "Link" }),
2293
2308
  /* @__PURE__ */ jsxRuntime.jsx("span", { style: dotStyle(tokens.accent) })
2294
2309
  ] }),
2295
2310
  /* @__PURE__ */ jsxRuntime.jsx("span", { style: lineStyle(tokens.textMuted) }),
2296
2311
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: sectionStyle("flex-start"), children: [
2297
2312
  /* @__PURE__ */ jsxRuntime.jsx("span", { style: dotStyle(tokens.textMuted) }),
2298
- /* @__PURE__ */ jsxRuntime.jsx("span", { style: labelStyle(tokens.textMuted), children: "Deposit" })
2313
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: labelStyle2(tokens.textMuted), children: "Deposit" })
2299
2314
  ] })
2300
2315
  ] });
2301
2316
  }
@@ -2326,7 +2341,7 @@ var lineStyle = (color) => ({
2326
2341
  opacity: 0.4,
2327
2342
  flexShrink: 0
2328
2343
  });
2329
- var labelStyle = (color) => ({
2344
+ var labelStyle2 = (color) => ({
2330
2345
  fontSize: "0.82rem",
2331
2346
  fontWeight: 600,
2332
2347
  color,
@@ -2741,7 +2756,7 @@ function StepList({ steps }) {
2741
2756
  }
2742
2757
  ),
2743
2758
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: labelContainerStyle, children: [
2744
- /* @__PURE__ */ jsxRuntime.jsx("span", { style: labelStyle2(isComplete || isActive ? tokens.text : tokens.textMuted), children: step.label }),
2759
+ /* @__PURE__ */ jsxRuntime.jsx("span", { style: labelStyle3(isComplete || isActive ? tokens.text : tokens.textMuted), children: step.label }),
2745
2760
  step.detail && /* @__PURE__ */ jsxRuntime.jsx("span", { style: detailStyle(tokens.textMuted), children: step.detail })
2746
2761
  ] })
2747
2762
  ] }, i);
@@ -2782,7 +2797,7 @@ var labelContainerStyle = {
2782
2797
  display: "flex",
2783
2798
  flexDirection: "column"
2784
2799
  };
2785
- var labelStyle2 = (color) => ({
2800
+ var labelStyle3 = (color) => ({
2786
2801
  fontSize: "0.9rem",
2787
2802
  fontWeight: 500,
2788
2803
  color
@@ -2835,7 +2850,7 @@ function LoginScreen({
2835
2850
  right: merchantInitials ? /* @__PURE__ */ jsxRuntime.jsx("div", { style: avatarStyle(tokens), children: merchantInitials }) : void 0
2836
2851
  }
2837
2852
  ),
2838
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle2, children: [
2853
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle, children: [
2839
2854
  /* @__PURE__ */ jsxRuntime.jsx("img", { src: SWYPE_LOGO, alt: "Swype", style: logoStyle }),
2840
2855
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle(tokens.text), children: "Your Money. Any App.\nOne Tap." }),
2841
2856
  error && /* @__PURE__ */ jsxRuntime.jsx("div", { style: errorStyle(tokens), children: error }),
@@ -2870,7 +2885,7 @@ function socialLabel(provider) {
2870
2885
  return "X";
2871
2886
  }
2872
2887
  }
2873
- var contentStyle2 = {
2888
+ var contentStyle = {
2874
2889
  textAlign: "center",
2875
2890
  flex: 1,
2876
2891
  display: "flex",
@@ -3011,7 +3026,7 @@ function OtpVerifyScreen({
3011
3026
  ] }),
3012
3027
  children: [
3013
3028
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onBack }),
3014
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle3, children: [
3029
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle2, children: [
3015
3030
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle2(tokens.text), children: "Confirm it is you" }),
3016
3031
  /* @__PURE__ */ jsxRuntime.jsxs("p", { style: subtitleStyle(tokens.textSecondary), children: [
3017
3032
  "We sent a 6-digit code to",
@@ -3035,7 +3050,7 @@ function OtpVerifyScreen({
3035
3050
  }
3036
3051
  );
3037
3052
  }
3038
- var contentStyle3 = {
3053
+ var contentStyle2 = {
3039
3054
  textAlign: "center",
3040
3055
  display: "flex",
3041
3056
  flexDirection: "column",
@@ -3100,7 +3115,7 @@ function PasskeyScreen({
3100
3115
  ] }),
3101
3116
  children: [
3102
3117
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onBack, onLogout }),
3103
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle4, children: [
3118
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle3, children: [
3104
3119
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle3(tokens.text), children: "Secure your account with a passkey" }),
3105
3120
  /* @__PURE__ */ jsxRuntime.jsx("p", { style: subtitleStyle2(tokens.textSecondary), children: "This enables secure one-tap deposits on this device" }),
3106
3121
  error && /* @__PURE__ */ jsxRuntime.jsx("div", { style: errorBannerStyle2(tokens), children: error })
@@ -3109,7 +3124,7 @@ function PasskeyScreen({
3109
3124
  }
3110
3125
  );
3111
3126
  }
3112
- var contentStyle4 = {
3127
+ var contentStyle3 = {
3113
3128
  textAlign: "center",
3114
3129
  flex: 1,
3115
3130
  display: "flex",
@@ -3535,7 +3550,8 @@ function SetupScreen({
3535
3550
  onLogout,
3536
3551
  onAdvanced,
3537
3552
  loading,
3538
- error
3553
+ error,
3554
+ selectedTokenSymbol
3539
3555
  }) {
3540
3556
  const { tokens } = useSwypeConfig();
3541
3557
  const effectiveMax = DEFAULT_MAX;
@@ -3624,7 +3640,7 @@ function SetupScreen({
3624
3640
  style: tokenIconButtonStyle(!!onAdvanced),
3625
3641
  children: [
3626
3642
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: tokenIconWrapStyle, children: [
3627
- /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "36", height: "36", viewBox: "0 0 36 36", fill: "none", children: [
3643
+ selectedTokenSymbol && TOKEN_LOGOS[selectedTokenSymbol] ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: TOKEN_LOGOS[selectedTokenSymbol], alt: selectedTokenSymbol, width: 36, height: 36, style: { borderRadius: "50%" } }) : /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "36", height: "36", viewBox: "0 0 36 36", fill: "none", children: [
3628
3644
  /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "18", cy: "18", r: "18", fill: "#2DB84B" }),
3629
3645
  /* @__PURE__ */ jsxRuntime.jsx("text", { x: "18", y: "23", textAnchor: "middle", fontSize: "18", fill: "#fff", fontWeight: "700", children: "$" })
3630
3646
  ] }),
@@ -3770,8 +3786,8 @@ function SetupStatusScreen({
3770
3786
  if (complete) {
3771
3787
  return /* @__PURE__ */ jsxRuntime.jsxs(ScreenLayout, { footer: /* @__PURE__ */ jsxRuntime.jsx(PoweredByFooter, {}), children: [
3772
3788
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onBack: onContinue }),
3773
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle5, children: [
3774
- /* @__PURE__ */ jsxRuntime.jsx("img", { src: SWYPE_MASCOT, alt: "Swype", style: mascotStyle2 }),
3789
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle4, children: [
3790
+ /* @__PURE__ */ jsxRuntime.jsx("img", { src: SWYPE_LOGO, alt: "Swype", style: mascotStyle2 }),
3775
3791
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle6(tokens.text), children: "Done!" }),
3776
3792
  /* @__PURE__ */ jsxRuntime.jsx("p", { style: subtitleStyle4(tokens.textSecondary), children: "Return to the app to try one-tap deposits." })
3777
3793
  ] })
@@ -3783,7 +3799,7 @@ function SetupStatusScreen({
3783
3799
  ];
3784
3800
  return /* @__PURE__ */ jsxRuntime.jsxs(ScreenLayout, { children: [
3785
3801
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onLogout }),
3786
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle5, children: [
3802
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle4, children: [
3787
3803
  /* @__PURE__ */ jsxRuntime.jsx(Spinner, { size: 48 }),
3788
3804
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle6(tokens.text), children: "Setting up One-Tap..." }),
3789
3805
  error && /* @__PURE__ */ jsxRuntime.jsx("div", { style: errorBannerStyle4(tokens), children: error }),
@@ -3792,7 +3808,7 @@ function SetupStatusScreen({
3792
3808
  ] })
3793
3809
  ] });
3794
3810
  }
3795
- var contentStyle5 = {
3811
+ var contentStyle4 = {
3796
3812
  flex: 1,
3797
3813
  display: "flex",
3798
3814
  flexDirection: "column",
@@ -3863,7 +3879,8 @@ function DepositScreen({
3863
3879
  onAuthorizeAccount,
3864
3880
  onAddProvider,
3865
3881
  onSelectToken,
3866
- selectedSourceLabel
3882
+ selectedSourceLabel,
3883
+ selectedTokenSymbol
3867
3884
  }) {
3868
3885
  const { tokens } = useSwypeConfig();
3869
3886
  const amount = initialAmount;
@@ -3882,7 +3899,6 @@ function DepositScreen({
3882
3899
  const selectedAccount = accounts?.find((a) => a.id === selectedAccountId);
3883
3900
  const selectedProviderName = selectedAccount?.name ?? "Wallet";
3884
3901
  const selectedProviderLogo = KNOWN_LOGOS[selectedProviderName.toLowerCase()];
3885
- const hasMultipleAccounts = accounts != null && accounts.length > 1;
3886
3902
  const isLowBalance = availableBalance < MIN_DEPOSIT;
3887
3903
  const exceedsLimit = remainingLimit != null && amount > remainingLimit && !isLowBalance;
3888
3904
  const canDeposit = amount >= MIN_DEPOSIT && !exceedsLimit && !isLowBalance && !processing;
@@ -3934,27 +3950,18 @@ function DepositScreen({
3934
3950
  ScreenLayout,
3935
3951
  {
3936
3952
  footer: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3937
- exceedsLimit && onIncreaseLimit ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3938
- /* @__PURE__ */ jsxRuntime.jsx(PrimaryButton, { onClick: onIncreaseLimit, loading: increasingLimit, children: "Increase limit" }),
3939
- /* @__PURE__ */ jsxRuntime.jsxs("p", { style: limitExceededHintStyle(tokens.warning), children: [
3940
- "Your deposit of $",
3941
- amount.toFixed(2),
3942
- " exceeds your One-Tap limit of $",
3943
- remainingLimit?.toFixed(2) ?? "0.00",
3944
- ". Increase your limit to continue."
3945
- ] })
3946
- ] }) : /* @__PURE__ */ jsxRuntime.jsx(PrimaryButton, { onClick: () => onDeposit(amount), disabled: !canDeposit, loading: processing, children: "Confirm" }),
3953
+ !accountPickerOpen && (exceedsLimit && onIncreaseLimit ? /* @__PURE__ */ jsxRuntime.jsx(PrimaryButton, { onClick: onIncreaseLimit, loading: increasingLimit, children: "Increase limit" }) : /* @__PURE__ */ jsxRuntime.jsx(PrimaryButton, { onClick: () => onDeposit(amount), disabled: !canDeposit, loading: processing, children: "Confirm" })),
3947
3954
  /* @__PURE__ */ jsxRuntime.jsx(PoweredByFooter, {})
3948
3955
  ] }),
3949
3956
  children: [
3950
- /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onBack }),
3957
+ /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onBack, onLogout }),
3951
3958
  /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: pickerRef, style: depositCardWrapStyle, children: [
3952
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: depositCardStyle(tokens), children: [
3959
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
3953
3960
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: depositLabelStyle(tokens.textMuted), children: "Depositing" }),
3954
3961
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: amountRowStyle2, children: [
3955
3962
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: amountValueStyle(tokens.text), children: [
3956
3963
  "$",
3957
- amount.toLocaleString("en-US", { minimumFractionDigits: 0, maximumFractionDigits: 2 })
3964
+ amount.toLocaleString("en-US", { minimumFractionDigits: 2, maximumFractionDigits: 2 })
3958
3965
  ] }),
3959
3966
  /* @__PURE__ */ jsxRuntime.jsxs(
3960
3967
  "button",
@@ -3963,34 +3970,28 @@ function DepositScreen({
3963
3970
  onClick: onSelectToken,
3964
3971
  style: tokenIconButtonStyle2(!!onSelectToken),
3965
3972
  children: [
3966
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: tokenIconWrapStyle2, children: [
3967
- /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "36", height: "36", viewBox: "0 0 36 36", fill: "none", children: [
3968
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "18", cy: "18", r: "18", fill: "#2DB84B" }),
3969
- /* @__PURE__ */ jsxRuntime.jsx("text", { x: "18", y: "23", textAnchor: "middle", fontSize: "18", fill: "#fff", fontWeight: "700", children: "$" })
3970
- ] }),
3971
- /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", style: checkBadgeStyle2, children: [
3972
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "8", cy: "8", r: "8", fill: "#2775CA" }),
3973
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 8l2 2 4-4", stroke: "#fff", strokeWidth: "1.6", strokeLinecap: "round", strokeLinejoin: "round" })
3974
- ] })
3975
- ] }),
3973
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: tokenIconWrapStyle2, children: selectedTokenSymbol && TOKEN_LOGOS[selectedTokenSymbol] ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: TOKEN_LOGOS[selectedTokenSymbol], alt: selectedTokenSymbol, width: 36, height: 36, style: { borderRadius: "50%" } }) : /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "36", height: "36", viewBox: "0 0 36 36", fill: "none", children: [
3974
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "18", cy: "18", r: "18", fill: "#2DB84B" }),
3975
+ /* @__PURE__ */ jsxRuntime.jsx("text", { x: "18", y: "23", textAnchor: "middle", fontSize: "18", fill: "#fff", fontWeight: "700", children: "$" })
3976
+ ] }) }),
3976
3977
  /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", style: { opacity: 0.5 }, children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6 9l6 6 6-6", stroke: tokens.textMuted, strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round" }) })
3977
3978
  ]
3978
3979
  }
3979
3980
  )
3980
3981
  ] }),
3981
- /* @__PURE__ */ jsxRuntime.jsxs(
3982
+ !accountPickerOpen && /* @__PURE__ */ jsxRuntime.jsxs(
3982
3983
  "button",
3983
3984
  {
3984
3985
  type: "button",
3985
- onClick: hasMultipleAccounts ? () => setAccountPickerOpen(!accountPickerOpen) : void 0,
3986
- style: walletBalanceRowStyle(hasMultipleAccounts),
3986
+ onClick: () => setAccountPickerOpen(!accountPickerOpen),
3987
+ style: walletBalanceRowStyle,
3987
3988
  children: [
3988
3989
  selectedProviderLogo ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: selectedProviderLogo, alt: selectedProviderName, style: providerLogoStyle }) : /* @__PURE__ */ jsxRuntime.jsx("div", { style: providerFallbackStyle(tokens.textMuted), children: selectedProviderName.charAt(0) }),
3989
3990
  /* @__PURE__ */ jsxRuntime.jsxs("span", { style: walletBalanceStyle(tokens.text), children: [
3990
3991
  "$",
3991
3992
  availableBalance.toLocaleString("en-US", { minimumFractionDigits: 2, maximumFractionDigits: 2 })
3992
3993
  ] }),
3993
- hasMultipleAccounts && /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", style: { opacity: 0.4 }, children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 10l5-5 5 5M7 14l5 5 5-5", stroke: tokens.textMuted, strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) })
3994
+ /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", style: { opacity: 0.4 }, children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 10l5-5 5 5M7 14l5 5 5-5", stroke: tokens.textMuted, strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) })
3994
3995
  ]
3995
3996
  }
3996
3997
  )
@@ -4060,12 +4061,19 @@ function DepositScreen({
4060
4061
  ] })
4061
4062
  ] })
4062
4063
  ] }),
4063
- remainingLimit != null && /* @__PURE__ */ jsxRuntime.jsxs("div", { style: spendingLimitStyle(tokens.textMuted), children: [
4064
+ !accountPickerOpen && remainingLimit != null && /* @__PURE__ */ jsxRuntime.jsxs("div", { style: spendingLimitStyle(tokens.textMuted), children: [
4064
4065
  "Spending Limit",
4065
4066
  " ",
4066
4067
  /* @__PURE__ */ jsxRuntime.jsxs("strong", { style: { color: tokens.text }, children: [
4067
4068
  "$",
4068
- remainingLimit.toLocaleString("en-US", { minimumFractionDigits: 0, maximumFractionDigits: 0 })
4069
+ remainingLimit.toLocaleString("en-US", { minimumFractionDigits: 2, maximumFractionDigits: 2 })
4070
+ ] }),
4071
+ exceedsLimit && /* @__PURE__ */ jsxRuntime.jsxs("p", { style: limitExceededHintStyle(tokens.warning), children: [
4072
+ "Your deposit of $",
4073
+ amount.toFixed(2),
4074
+ " exceeds your One-Tap limit of $",
4075
+ remainingLimit?.toFixed(2) ?? "0.00",
4076
+ ". Increase your limit to continue."
4069
4077
  ] })
4070
4078
  ] }),
4071
4079
  error && /* @__PURE__ */ jsxRuntime.jsx("div", { style: errorBannerStyle5(tokens), children: error })
@@ -4077,12 +4085,6 @@ var depositCardWrapStyle = {
4077
4085
  position: "relative",
4078
4086
  marginBottom: 20
4079
4087
  };
4080
- var depositCardStyle = (tokens) => ({
4081
- background: tokens.bgInput,
4082
- border: `1px solid ${tokens.border}`,
4083
- borderRadius: tokens.radiusLg,
4084
- padding: "16px 20px"
4085
- });
4086
4088
  var depositLabelStyle = (color) => ({
4087
4089
  fontSize: "0.75rem",
4088
4090
  fontWeight: 500,
@@ -4116,22 +4118,19 @@ var tokenIconWrapStyle2 = {
4116
4118
  width: 36,
4117
4119
  height: 36
4118
4120
  };
4119
- var checkBadgeStyle2 = {
4120
- position: "absolute",
4121
- bottom: -1,
4122
- right: -3
4123
- };
4124
- var walletBalanceRowStyle = (clickable) => ({
4121
+ var walletBalanceRowStyle = {
4125
4122
  display: "flex",
4126
4123
  alignItems: "center",
4124
+ justifyContent: "center",
4127
4125
  gap: 8,
4128
4126
  background: "transparent",
4129
4127
  border: "none",
4130
4128
  padding: 0,
4131
- cursor: clickable ? "pointer" : "default",
4129
+ width: "100%",
4130
+ cursor: "pointer",
4132
4131
  fontFamily: "inherit",
4133
4132
  outline: "none"
4134
- });
4133
+ };
4135
4134
  var providerLogoStyle = {
4136
4135
  width: 18,
4137
4136
  height: 18,
@@ -4156,16 +4155,11 @@ var walletBalanceStyle = (color) => ({
4156
4155
  color
4157
4156
  });
4158
4157
  var accountDropdownOuterStyle = (tokens) => ({
4159
- position: "absolute",
4160
- top: "100%",
4161
- left: 0,
4162
- right: 0,
4163
4158
  marginTop: 4,
4164
4159
  background: tokens.bgCard,
4165
4160
  border: `1px solid ${tokens.border}`,
4166
4161
  borderRadius: tokens.radiusLg,
4167
4162
  boxShadow: tokens.shadowLg,
4168
- zIndex: 50,
4169
4163
  padding: "12px 14px 14px"
4170
4164
  });
4171
4165
  var accountDropdownLabelStyle = (color) => ({
@@ -4254,7 +4248,7 @@ var addAccountBtnStyle = (tokens) => ({
4254
4248
  padding: "12px 16px",
4255
4249
  background: "transparent",
4256
4250
  border: "none",
4257
- color: tokens.accent,
4251
+ color: tokens.textMuted,
4258
4252
  fontWeight: 600,
4259
4253
  fontSize: "0.85rem",
4260
4254
  cursor: "pointer",
@@ -4381,7 +4375,7 @@ function SuccessScreen({
4381
4375
  ] }),
4382
4376
  children: [
4383
4377
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onLogout }),
4384
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle6, children: [
4378
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle5, children: [
4385
4379
  succeeded ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4386
4380
  /* @__PURE__ */ jsxRuntime.jsx(IconCircle, { variant: "success", size: 64, children: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "32", height: "32", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z", fill: tokens.success }) }) }),
4387
4381
  /* @__PURE__ */ jsxRuntime.jsxs("h2", { style: headingStyle7(tokens.text), children: [
@@ -4428,7 +4422,7 @@ function SuccessScreen({
4428
4422
  }
4429
4423
  );
4430
4424
  }
4431
- var contentStyle6 = {
4425
+ var contentStyle5 = {
4432
4426
  flex: 1,
4433
4427
  display: "flex",
4434
4428
  flexDirection: "column",
@@ -4551,7 +4545,7 @@ function SelectSourceScreen({
4551
4545
  }
4552
4546
  ),
4553
4547
  /* @__PURE__ */ jsxRuntime.jsx("p", { style: subtitleStyle6(tokens.textMuted), children: "Choose which chain and token to pay from." }),
4554
- /* @__PURE__ */ jsxRuntime.jsx("label", { style: labelStyle3(tokens.textSecondary), children: "Chain" }),
4548
+ /* @__PURE__ */ jsxRuntime.jsx("label", { style: labelStyle4(tokens.textSecondary), children: "Chain" }),
4555
4549
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: optionListStyle, children: choices.map((chain) => {
4556
4550
  const isSelected = chain.chainName === selectedChainName;
4557
4551
  const isRecommended = chain.chainName === recommended?.chainName;
@@ -4579,7 +4573,7 @@ function SelectSourceScreen({
4579
4573
  );
4580
4574
  }) }),
4581
4575
  tokenChoices.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4582
- /* @__PURE__ */ jsxRuntime.jsx("label", { style: labelStyle3(tokens.textSecondary), children: "Token" }),
4576
+ /* @__PURE__ */ jsxRuntime.jsx("label", { style: labelStyle4(tokens.textSecondary), children: "Token" }),
4583
4577
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: optionListStyle, children: tokenChoices.map((token) => {
4584
4578
  const isSelected = token.tokenSymbol === selectedTokenSymbol;
4585
4579
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -4613,7 +4607,7 @@ var subtitleStyle6 = (color) => ({
4613
4607
  margin: "0 0 20px",
4614
4608
  lineHeight: 1.5
4615
4609
  });
4616
- var labelStyle3 = (color) => ({
4610
+ var labelStyle4 = (color) => ({
4617
4611
  display: "block",
4618
4612
  fontSize: "0.75rem",
4619
4613
  fontWeight: 600,
@@ -4724,7 +4718,7 @@ function AdvancedSourceScreen({
4724
4718
  ),
4725
4719
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle8(tokens.text), children: "Set up One-Tap deposits" }),
4726
4720
  /* @__PURE__ */ jsxRuntime.jsx("p", { style: subtitleStyle7(tokens.textSecondary), children: "Select a token source for your One-Tap deposits." }),
4727
- /* @__PURE__ */ jsxRuntime.jsx("label", { style: labelStyle4(tokens.textSecondary), children: "Select tokens to approve" }),
4721
+ /* @__PURE__ */ jsxRuntime.jsx("label", { style: labelStyle5(tokens.textSecondary), children: "Select tokens to approve" }),
4728
4722
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: chainListStyle, children: choices.map((chain) => {
4729
4723
  const isExpanded = expandedChain === chain.chainName;
4730
4724
  const chainHasSelection = localChain === chain.chainName;
@@ -4799,7 +4793,7 @@ var subtitleStyle7 = (color) => ({
4799
4793
  margin: "0 0 20px",
4800
4794
  lineHeight: 1.5
4801
4795
  });
4802
- var labelStyle4 = (color) => ({
4796
+ var labelStyle5 = (color) => ({
4803
4797
  display: "block",
4804
4798
  fontSize: "0.75rem",
4805
4799
  fontWeight: 600,
@@ -4921,7 +4915,7 @@ function TransferStatusScreen({
4921
4915
  const steps = buildSteps(phase);
4922
4916
  return /* @__PURE__ */ jsxRuntime.jsxs(ScreenLayout, { footer: /* @__PURE__ */ jsxRuntime.jsx(PoweredByFooter, {}), children: [
4923
4917
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onLogout }),
4924
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle7, children: [
4918
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle6, children: [
4925
4919
  /* @__PURE__ */ jsxRuntime.jsx(Spinner, { size: 64 }),
4926
4920
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle9(tokens.text), children: "Depositing your money..." }),
4927
4921
  error && /* @__PURE__ */ jsxRuntime.jsx("div", { style: errorBannerStyle6(tokens), children: error }),
@@ -4929,7 +4923,7 @@ function TransferStatusScreen({
4929
4923
  ] })
4930
4924
  ] });
4931
4925
  }
4932
- var contentStyle7 = {
4926
+ var contentStyle6 = {
4933
4927
  flex: 1,
4934
4928
  display: "flex",
4935
4929
  flexDirection: "column",
@@ -5020,7 +5014,7 @@ function OpenWalletScreen({
5020
5014
  ] }),
5021
5015
  children: [
5022
5016
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onLogout }),
5023
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle8, children: [
5017
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle7, children: [
5024
5018
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: logoCircleStyle(tokens.bgInput), children: logoSrc ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: logoSrc, alt: displayName, style: logoStyle2 }) : /* @__PURE__ */ jsxRuntime.jsx(Spinner, { size: 32 }) }),
5025
5019
  /* @__PURE__ */ jsxRuntime.jsxs("h2", { style: headingStyle10(tokens.text), children: [
5026
5020
  "Setting up ",
@@ -5053,7 +5047,7 @@ function OpenWalletScreen({
5053
5047
  ] }),
5054
5048
  children: [
5055
5049
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onBack, onLogout }),
5056
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle8, children: [
5050
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle7, children: [
5057
5051
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: logoCircleStyle(tokens.bgInput), children: logoSrc ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: logoSrc, alt: displayName, style: logoStyle2 }) : /* @__PURE__ */ jsxRuntime.jsx(Spinner, { size: 32 }) }),
5058
5052
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle10(tokens.text), children: loading ? "Connecting..." : `Open ${displayName}` }),
5059
5053
  /* @__PURE__ */ jsxRuntime.jsx("p", { style: subtitleStyle8(tokens.textSecondary), children: loading ? "Creating transfer and preparing your wallet link..." : `Continue in ${displayName} to authorize this connection.` }),
@@ -5066,7 +5060,7 @@ function OpenWalletScreen({
5066
5060
  }
5067
5061
  );
5068
5062
  }
5069
- var contentStyle8 = {
5063
+ var contentStyle7 = {
5070
5064
  flex: 1,
5071
5065
  display: "flex",
5072
5066
  flexDirection: "column",
@@ -5152,7 +5146,7 @@ function ConfirmSignScreen({
5152
5146
  ] }),
5153
5147
  children: [
5154
5148
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onLogout }),
5155
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle9, children: [
5149
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: contentStyle8, children: [
5156
5150
  logoSrc ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: logoSrc, alt: displayName, style: logoStyle3 }) : /* @__PURE__ */ jsxRuntime.jsx(Spinner, { size: 48 }),
5157
5151
  /* @__PURE__ */ jsxRuntime.jsx("h2", { style: headingStyle11(tokens.text), children: "Wallet authorized" }),
5158
5152
  /* @__PURE__ */ jsxRuntime.jsxs("p", { style: subtitleStyle9(tokens.textSecondary), children: [
@@ -5168,7 +5162,7 @@ function ConfirmSignScreen({
5168
5162
  }
5169
5163
  );
5170
5164
  }
5171
- var contentStyle9 = {
5165
+ var contentStyle8 = {
5172
5166
  flex: 1,
5173
5167
  display: "flex",
5174
5168
  flexDirection: "column",
@@ -5231,7 +5225,8 @@ function TokenPickerScreen({
5231
5225
  onAuthorizeToken,
5232
5226
  onBack,
5233
5227
  onLogout,
5234
- depositAmount
5228
+ depositAmount,
5229
+ selectedTokenSymbol
5235
5230
  }) {
5236
5231
  const { tokens: t } = useSwypeConfig();
5237
5232
  const entries = [];
@@ -5260,24 +5255,28 @@ function TokenPickerScreen({
5260
5255
  };
5261
5256
  return /* @__PURE__ */ jsxRuntime.jsxs(ScreenLayout, { footer: /* @__PURE__ */ jsxRuntime.jsx(PoweredByFooter, {}), children: [
5262
5257
  /* @__PURE__ */ jsxRuntime.jsx(ScreenHeader, { onBack, onLogout }),
5263
- /* @__PURE__ */ jsxRuntime.jsx("div", { style: mascotWrapStyle, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: SWYPE_MASCOT, alt: "Swype", style: mascotImgStyle }) }),
5264
- depositAmount != null && /* @__PURE__ */ jsxRuntime.jsxs("div", { style: depositCardStyle2(t), children: [
5258
+ depositAmount != null && /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
5265
5259
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: depositLabelStyle2(t.textMuted), children: "Depositing" }),
5266
5260
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: depositAmountRowStyle, children: [
5267
5261
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: depositAmountStyle(t.text), children: [
5268
5262
  "$",
5269
- depositAmount.toLocaleString("en-US", { minimumFractionDigits: 0, maximumFractionDigits: 2 })
5263
+ depositAmount.toLocaleString("en-US", { minimumFractionDigits: 2, maximumFractionDigits: 2 })
5270
5264
  ] }),
5271
- /* @__PURE__ */ jsxRuntime.jsxs("div", { style: tokenIconWrapStyle3, children: [
5272
- /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "32", height: "32", viewBox: "0 0 36 36", fill: "none", children: [
5273
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "18", cy: "18", r: "18", fill: "#2DB84B" }),
5274
- /* @__PURE__ */ jsxRuntime.jsx("text", { x: "18", y: "23", textAnchor: "middle", fontSize: "18", fill: "#fff", fontWeight: "700", children: "$" })
5275
- ] }),
5276
- /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "14", height: "14", viewBox: "0 0 16 16", fill: "none", style: checkBadgeStyle3, children: [
5277
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "8", cy: "8", r: "8", fill: "#2775CA" }),
5278
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 8l2 2 4-4", stroke: "#fff", strokeWidth: "1.6", strokeLinecap: "round", strokeLinejoin: "round" })
5279
- ] })
5280
- ] })
5265
+ /* @__PURE__ */ jsxRuntime.jsxs(
5266
+ "button",
5267
+ {
5268
+ type: "button",
5269
+ onClick: onBack,
5270
+ style: tokenIconButtonStyle3,
5271
+ children: [
5272
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: tokenIconWrapStyle3, children: selectedTokenSymbol && TOKEN_LOGOS[selectedTokenSymbol] ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: TOKEN_LOGOS[selectedTokenSymbol], alt: selectedTokenSymbol, width: 36, height: 36, style: { borderRadius: "50%" } }) : /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "36", height: "36", viewBox: "0 0 36 36", fill: "none", children: [
5273
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "18", cy: "18", r: "18", fill: "#2DB84B" }),
5274
+ /* @__PURE__ */ jsxRuntime.jsx("text", { x: "18", y: "23", textAnchor: "middle", fontSize: "18", fill: "#fff", fontWeight: "700", children: "$" })
5275
+ ] }) }),
5276
+ /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", style: { opacity: 0.5 }, children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6 9l6 6 6-6", stroke: t.textMuted, strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round" }) })
5277
+ ]
5278
+ }
5279
+ )
5281
5280
  ] })
5282
5281
  ] }),
5283
5282
  /* @__PURE__ */ jsxRuntime.jsx("div", { style: sectionLabelStyle(t.textMuted), children: "Choose token" }),
@@ -5290,7 +5289,7 @@ function TokenPickerScreen({
5290
5289
  onClick: () => handleSelect(entry),
5291
5290
  style: tokenRowStyle2(t),
5292
5291
  children: [
5293
- /* @__PURE__ */ jsxRuntime.jsx("div", { style: tokenIconCircleStyle(t), children: /* @__PURE__ */ jsxRuntime.jsx("span", { style: tokenIconTextStyle(t.textMuted), children: "$" }) }),
5292
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: tokenIconCircleStyle(t, !!TOKEN_LOGOS[entry.tokenSymbol]), children: TOKEN_LOGOS[entry.tokenSymbol] ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: TOKEN_LOGOS[entry.tokenSymbol], alt: entry.tokenSymbol, style: tokenLogoImgStyle }) : /* @__PURE__ */ jsxRuntime.jsx("span", { style: tokenIconTextStyle(t.textMuted), children: "$" }) }),
5294
5293
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: tokenInfoStyle2, children: [
5295
5294
  /* @__PURE__ */ jsxRuntime.jsxs("div", { style: tokenNameRowStyle, children: [
5296
5295
  /* @__PURE__ */ jsxRuntime.jsx("span", { style: tokenSymbolTextStyle(t.text), children: entry.tokenSymbol }),
@@ -5313,22 +5312,6 @@ function TokenPickerScreen({
5313
5312
  }) })
5314
5313
  ] });
5315
5314
  }
5316
- var mascotWrapStyle = {
5317
- display: "flex",
5318
- justifyContent: "center",
5319
- marginBottom: 16
5320
- };
5321
- var mascotImgStyle = {
5322
- width: 36,
5323
- height: 36
5324
- };
5325
- var depositCardStyle2 = (tokens) => ({
5326
- background: tokens.bgInput,
5327
- border: `1px solid ${tokens.border}`,
5328
- borderRadius: tokens.radiusLg,
5329
- padding: "16px 20px",
5330
- marginBottom: 24
5331
- });
5332
5315
  var depositLabelStyle2 = (color) => ({
5333
5316
  fontSize: "0.75rem",
5334
5317
  fontWeight: 500,
@@ -5341,22 +5324,27 @@ var depositAmountRowStyle = {
5341
5324
  justifyContent: "space-between"
5342
5325
  };
5343
5326
  var depositAmountStyle = (color) => ({
5344
- fontSize: "2.2rem",
5327
+ fontSize: "2.4rem",
5345
5328
  fontWeight: 700,
5346
5329
  letterSpacing: "-0.02em",
5347
5330
  color
5348
5331
  });
5332
+ var tokenIconButtonStyle3 = {
5333
+ display: "flex",
5334
+ alignItems: "center",
5335
+ gap: 4,
5336
+ background: "transparent",
5337
+ border: "none",
5338
+ cursor: "pointer",
5339
+ padding: 0,
5340
+ flexShrink: 0
5341
+ };
5349
5342
  var tokenIconWrapStyle3 = {
5350
5343
  position: "relative",
5351
- width: 32,
5352
- height: 32,
5344
+ width: 36,
5345
+ height: 36,
5353
5346
  flexShrink: 0
5354
5347
  };
5355
- var checkBadgeStyle3 = {
5356
- position: "absolute",
5357
- bottom: -1,
5358
- right: -3
5359
- };
5360
5348
  var sectionLabelStyle = (color) => ({
5361
5349
  fontSize: "0.84rem",
5362
5350
  fontWeight: 500,
@@ -5381,16 +5369,23 @@ var tokenRowStyle2 = (tokens) => ({
5381
5369
  textAlign: "left",
5382
5370
  width: "100%"
5383
5371
  });
5384
- var tokenIconCircleStyle = (tokens) => ({
5372
+ var tokenIconCircleStyle = (tokens, hasLogo) => ({
5385
5373
  width: 36,
5386
5374
  height: 36,
5387
5375
  borderRadius: "50%",
5388
- border: `1.5px solid ${tokens.border}`,
5376
+ border: hasLogo ? "none" : `1.5px solid ${tokens.border}`,
5389
5377
  display: "flex",
5390
5378
  alignItems: "center",
5391
5379
  justifyContent: "center",
5392
- flexShrink: 0
5380
+ flexShrink: 0,
5381
+ overflow: "hidden"
5393
5382
  });
5383
+ var tokenLogoImgStyle = {
5384
+ width: 36,
5385
+ height: 36,
5386
+ borderRadius: "50%",
5387
+ objectFit: "cover"
5388
+ };
5394
5389
  var tokenIconTextStyle = (color) => ({
5395
5390
  fontSize: "1rem",
5396
5391
  fontWeight: 700,
@@ -5654,7 +5649,8 @@ function StepRendererContent({
5654
5649
  onAdvanced: handlers.onSelectToken,
5655
5650
  selectedSourceLabel: effectiveSourceLabel,
5656
5651
  loading: savingOneTapLimit,
5657
- error: state.error
5652
+ error: state.error,
5653
+ selectedTokenSymbol: selectedSource?.token.symbol
5658
5654
  }
5659
5655
  );
5660
5656
  }
@@ -5698,7 +5694,8 @@ function StepRendererContent({
5698
5694
  onAuthorizeAccount: handlers.onContinueConnection,
5699
5695
  onAddProvider: () => handlers.onNavigate("wallet-picker"),
5700
5696
  onSelectToken: handlers.onSelectToken,
5701
- selectedSourceLabel
5697
+ selectedSourceLabel,
5698
+ selectedTokenSymbol: selectedSource?.token.symbol
5702
5699
  }
5703
5700
  );
5704
5701
  }
@@ -5715,7 +5712,8 @@ function StepRendererContent({
5715
5712
  onAuthorizeToken: handlers.onAuthorizeToken,
5716
5713
  onBack: () => handlers.onNavigate(state.previousStep === "setup" ? "setup" : "deposit"),
5717
5714
  onLogout: handlers.onLogout,
5718
- depositAmount: depositAmount ?? void 0
5715
+ depositAmount: depositAmount ?? void 0,
5716
+ selectedTokenSymbol: selectedSource?.token.symbol
5719
5717
  }
5720
5718
  );
5721
5719
  }
@@ -5792,7 +5790,8 @@ function StepRendererContent({
5792
5790
  onSelectAccount: handlers.onSelectAccount,
5793
5791
  onAuthorizeAccount: handlers.onContinueConnection,
5794
5792
  onAddProvider: () => handlers.onNavigate("wallet-picker"),
5795
- selectedSourceLabel
5793
+ selectedSourceLabel,
5794
+ selectedTokenSymbol: selectedSource?.token.symbol
5796
5795
  }
5797
5796
  );
5798
5797
  }