@rhinestone/deposit-modal 0.1.49 → 0.1.50

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/README.md CHANGED
@@ -92,6 +92,7 @@ Notes:
92
92
  | `rhinestoneApiKey` | `string` | No | Optional SDK api key forwarded to `RhinestoneSDK` during smart-account setup |
93
93
  | `signerAddress` | `Address` | No | Session signer address |
94
94
  | `waitForFinalTx` | `boolean` | No | Wait for destination tx (default: true) |
95
+ | `enableSolana` | `boolean` | No | Enable Solana wallet and QR deposit flows (default: `true`) |
95
96
  | `onRequestConnect` | `() => void` | No | Called when wallet connection needed |
96
97
  | `connectButtonLabel` | `string` | No | Custom connect button label |
97
98
  | `theme` | `DepositModalTheme` | No | Theme customization |
@@ -196,6 +197,8 @@ Also supports `onReady`, `onConnected`, and `onError` (same as DepositModal).
196
197
 
197
198
  **UI Config**: `showLogo`, `showStepper`, `showBackButton`, `balanceTitle`, `maxDepositUsd`, `minDepositUsd`
198
199
 
200
+ Use `enableSolana={false}` to keep the deposit experience EVM-only even when `reownAppId` is provided.
201
+
199
202
  ## Utility Exports
200
203
 
201
204
  ```tsx
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  DepositModalInner
3
- } from "./chunk-QLLL6ARN.mjs";
3
+ } from "./chunk-N5BRA3ZN.mjs";
4
4
  import {
5
5
  ReownWalletProvider,
6
6
  useReownWallet
7
- } from "./chunk-JGB6XSYS.mjs";
7
+ } from "./chunk-UPA7N6GY.mjs";
8
8
  import "./chunk-FKNYONM2.mjs";
9
9
  import "./chunk-ZJQZEIHA.mjs";
10
10
 
@@ -14,13 +14,16 @@ import { useAppKitProvider } from "@reown/appkit/react";
14
14
  import { jsx } from "react/jsx-runtime";
15
15
  function DepositModalWithReown(props) {
16
16
  const reown = useReownWallet();
17
- const { walletProvider: solanaWalletProvider } = useAppKitProvider("solana");
17
+ const enableSolana = props.enableSolana ?? true;
18
+ const { walletProvider: solanaWalletProvider } = useAppKitProvider(
19
+ enableSolana ? "solana" : "eip155"
20
+ );
18
21
  const reownWithSolana = useMemo(
19
22
  () => ({
20
23
  ...reown,
21
- solanaProvider: reown.isSolana ? solanaWalletProvider : void 0
24
+ solanaProvider: enableSolana && reown.isSolana ? solanaWalletProvider : void 0
22
25
  }),
23
- [reown, solanaWalletProvider]
26
+ [enableSolana, reown, solanaWalletProvider]
24
27
  );
25
28
  const handleConnect = useCallback(() => {
26
29
  reown.openConnect();
@@ -39,7 +42,15 @@ function DepositModalWithReown(props) {
39
42
  );
40
43
  }
41
44
  function DepositModalReown(props) {
42
- return /* @__PURE__ */ jsx(ReownWalletProvider, { projectId: props.reownAppId, theme: props.theme, children: /* @__PURE__ */ jsx(DepositModalWithReown, { ...props }) });
45
+ return /* @__PURE__ */ jsx(
46
+ ReownWalletProvider,
47
+ {
48
+ projectId: props.reownAppId,
49
+ theme: props.theme,
50
+ enableSolana: props.enableSolana,
51
+ children: /* @__PURE__ */ jsx(DepositModalWithReown, { ...props })
52
+ }
53
+ );
43
54
  }
44
55
  export {
45
56
  DepositModalReown
@@ -1,10 +1,10 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
2
2
 
3
- var _chunkKOYHFHYWcjs = require('./chunk-KOYHFHYW.cjs');
3
+ var _chunkHXNHL64Vcjs = require('./chunk-HXNHL64V.cjs');
4
4
 
5
5
 
6
6
 
7
- var _chunkXLRQCIYDcjs = require('./chunk-XLRQCIYD.cjs');
7
+ var _chunkXAGXQV4Kcjs = require('./chunk-XAGXQV4K.cjs');
8
8
  require('./chunk-7HJ7IBRH.cjs');
9
9
  require('./chunk-NELAYNA3.cjs');
10
10
 
@@ -13,14 +13,17 @@ var _react = require('react');
13
13
  var _react3 = require('@reown/appkit/react');
14
14
  var _jsxruntime = require('react/jsx-runtime');
15
15
  function DepositModalWithReown(props) {
16
- const reown = _chunkXLRQCIYDcjs.useReownWallet.call(void 0, );
17
- const { walletProvider: solanaWalletProvider } = _react3.useAppKitProvider.call(void 0, "solana");
16
+ const reown = _chunkXAGXQV4Kcjs.useReownWallet.call(void 0, );
17
+ const enableSolana = _nullishCoalesce(props.enableSolana, () => ( true));
18
+ const { walletProvider: solanaWalletProvider } = _react3.useAppKitProvider.call(void 0,
19
+ enableSolana ? "solana" : "eip155"
20
+ );
18
21
  const reownWithSolana = _react.useMemo.call(void 0,
19
22
  () => ({
20
23
  ...reown,
21
- solanaProvider: reown.isSolana ? solanaWalletProvider : void 0
24
+ solanaProvider: enableSolana && reown.isSolana ? solanaWalletProvider : void 0
22
25
  }),
23
- [reown, solanaWalletProvider]
26
+ [enableSolana, reown, solanaWalletProvider]
24
27
  );
25
28
  const handleConnect = _react.useCallback.call(void 0, () => {
26
29
  reown.openConnect();
@@ -29,7 +32,7 @@ function DepositModalWithReown(props) {
29
32
  reown.disconnect();
30
33
  }, [reown.disconnect]);
31
34
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32
- _chunkKOYHFHYWcjs.DepositModalInner,
35
+ _chunkHXNHL64Vcjs.DepositModalInner,
33
36
  {
34
37
  ...props,
35
38
  reownWallet: reownWithSolana,
@@ -39,7 +42,15 @@ function DepositModalWithReown(props) {
39
42
  );
40
43
  }
41
44
  function DepositModalReown(props) {
42
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXLRQCIYDcjs.ReownWalletProvider, { projectId: props.reownAppId, theme: props.theme, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DepositModalWithReown, { ...props }) });
45
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
46
+ _chunkXAGXQV4Kcjs.ReownWalletProvider,
47
+ {
48
+ projectId: props.reownAppId,
49
+ theme: props.theme,
50
+ enableSolana: props.enableSolana,
51
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DepositModalWithReown, { ...props })
52
+ }
53
+ );
43
54
  }
44
55
 
45
56
 
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  WithdrawModalInner
3
- } from "./chunk-HCZNF6CR.mjs";
3
+ } from "./chunk-GZIGVCI2.mjs";
4
4
  import {
5
5
  ReownWalletProvider,
6
6
  useReownWallet
7
- } from "./chunk-JGB6XSYS.mjs";
7
+ } from "./chunk-UPA7N6GY.mjs";
8
8
  import "./chunk-FKNYONM2.mjs";
9
9
  import "./chunk-ZJQZEIHA.mjs";
10
10
 
@@ -1,10 +1,10 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkPW55TOFKcjs = require('./chunk-PW55TOFK.cjs');
3
+ var _chunkCTZVI5NRcjs = require('./chunk-CTZVI5NR.cjs');
4
4
 
5
5
 
6
6
 
7
- var _chunkXLRQCIYDcjs = require('./chunk-XLRQCIYD.cjs');
7
+ var _chunkXAGXQV4Kcjs = require('./chunk-XAGXQV4K.cjs');
8
8
  require('./chunk-7HJ7IBRH.cjs');
9
9
  require('./chunk-NELAYNA3.cjs');
10
10
 
@@ -12,7 +12,7 @@ require('./chunk-NELAYNA3.cjs');
12
12
  var _react = require('react');
13
13
  var _jsxruntime = require('react/jsx-runtime');
14
14
  function WithdrawModalWithReown(props) {
15
- const reown = _chunkXLRQCIYDcjs.useReownWallet.call(void 0, );
15
+ const reown = _chunkXAGXQV4Kcjs.useReownWallet.call(void 0, );
16
16
  const handleConnect = _react.useCallback.call(void 0, () => {
17
17
  reown.openConnect();
18
18
  }, [reown.openConnect]);
@@ -20,7 +20,7 @@ function WithdrawModalWithReown(props) {
20
20
  reown.disconnect();
21
21
  }, [reown.disconnect]);
22
22
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
23
- _chunkPW55TOFKcjs.WithdrawModalInner,
23
+ _chunkCTZVI5NRcjs.WithdrawModalInner,
24
24
  {
25
25
  ...props,
26
26
  reownWallet: reown,
@@ -30,7 +30,7 @@ function WithdrawModalWithReown(props) {
30
30
  );
31
31
  }
32
32
  function WithdrawModalReown(props) {
33
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXLRQCIYDcjs.ReownWalletProvider, { projectId: props.reownAppId, theme: props.theme, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, WithdrawModalWithReown, { ...props }) });
33
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXAGXQV4Kcjs.ReownWalletProvider, { projectId: props.reownAppId, theme: props.theme, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, WithdrawModalWithReown, { ...props }) });
34
34
  }
35
35
 
36
36
 
@@ -1422,7 +1422,7 @@ function WithdrawFlow({
1422
1422
  // src/WithdrawModal.tsx
1423
1423
 
1424
1424
  var ReownWithdrawInner = _react.lazy.call(void 0,
1425
- () => Promise.resolve().then(() => _interopRequireWildcard(require("./WithdrawModalReown-ZSR3RP44.cjs"))).then((m) => ({
1425
+ () => Promise.resolve().then(() => _interopRequireWildcard(require("./WithdrawModalReown-JIKBNJU7.cjs"))).then((m) => ({
1426
1426
  default: m.WithdrawModalReown
1427
1427
  }))
1428
1428
  );
@@ -1422,7 +1422,7 @@ function WithdrawFlow({
1422
1422
  // src/WithdrawModal.tsx
1423
1423
  import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
1424
1424
  var ReownWithdrawInner = lazy(
1425
- () => import("./WithdrawModalReown-FODH7PY5.mjs").then((m) => ({
1425
+ () => import("./WithdrawModalReown-AHHM3VTB.mjs").then((m) => ({
1426
1426
  default: m.WithdrawModalReown
1427
1427
  }))
1428
1428
  );
@@ -84,6 +84,7 @@ function SetupStep({
84
84
  sessionChainIds,
85
85
  recipient,
86
86
  forceRegister,
87
+ enableSolana = true,
87
88
  service,
88
89
  onSetupComplete,
89
90
  onError,
@@ -114,7 +115,10 @@ function SetupStep({
114
115
  if (!setup.needsRegistration) {
115
116
  setState({ type: "ready", smartAccount });
116
117
  _optionalChain([onConnected, 'optionalCall', _ => _(address, smartAccount)]);
117
- onSetupComplete(smartAccount, setup.solanaDepositAddress);
118
+ onSetupComplete(
119
+ smartAccount,
120
+ enableSolana ? setup.solanaDepositAddress : void 0
121
+ );
118
122
  return;
119
123
  }
120
124
  setState({ type: "signing-session" });
@@ -150,7 +154,10 @@ function SetupStep({
150
154
  });
151
155
  setState({ type: "ready", smartAccount });
152
156
  _optionalChain([onConnected, 'optionalCall', _2 => _2(address, smartAccount)]);
153
- onSetupComplete(smartAccount, registerResult.solanaDepositAddress);
157
+ onSetupComplete(
158
+ smartAccount,
159
+ enableSolana ? registerResult.solanaDepositAddress : void 0
160
+ );
154
161
  } catch (error) {
155
162
  const message = error instanceof Error ? error.message : "Setup failed";
156
163
  setState({ type: "error", message });
@@ -165,6 +172,7 @@ function SetupStep({
165
172
  sessionChainIds,
166
173
  recipient,
167
174
  forceRegister,
175
+ enableSolana,
168
176
  service,
169
177
  onSetupComplete,
170
178
  onError,
@@ -2535,6 +2543,7 @@ function DepositFlow({
2535
2543
  sessionChainIds,
2536
2544
  forceRegister = false,
2537
2545
  waitForFinalTx = true,
2546
+ enableSolana = true,
2538
2547
  reownWallet,
2539
2548
  onConnect,
2540
2549
  onDisconnect,
@@ -2610,7 +2619,7 @@ function DepositFlow({
2610
2619
  });
2611
2620
  seen.add(id);
2612
2621
  }
2613
- if (_optionalChain([reownWallet, 'optionalAccess', _49 => _49.isConnected]) && reownWallet.isSolana && reownWallet.solanaAddress && dappAddress) {
2622
+ if (enableSolana && _optionalChain([reownWallet, 'optionalAccess', _49 => _49.isConnected]) && reownWallet.isSolana && reownWallet.solanaAddress && dappAddress) {
2614
2623
  const id = _nullishCoalesce(reownWallet.caipAddress, () => ( `solana:${reownWallet.solanaAddress}`));
2615
2624
  if (!seen.has(id)) {
2616
2625
  options.push({
@@ -2644,6 +2653,7 @@ function DepositFlow({
2644
2653
  _optionalChain([reownWallet, 'optionalAccess', _53 => _53.walletClient]),
2645
2654
  _optionalChain([reownWallet, 'optionalAccess', _54 => _54.publicClient]),
2646
2655
  _optionalChain([reownWallet, 'optionalAccess', _55 => _55.icon]),
2656
+ enableSolana,
2647
2657
  _optionalChain([reownWallet, 'optionalAccess', _56 => _56.isSolana]),
2648
2658
  _optionalChain([reownWallet, 'optionalAccess', _57 => _57.solanaAddress]),
2649
2659
  _optionalChain([reownWallet, 'optionalAccess', _58 => _58.caipAddress])
@@ -2651,7 +2661,7 @@ function DepositFlow({
2651
2661
  const canAutoLock = _optionalChain([dappWalletClient, 'optionalAccess', _59 => _59.account]) && dappAddress && !reownWallet;
2652
2662
  const hasWalletOptions = walletOptions.length > 0;
2653
2663
  const hasReownSession = Boolean(
2654
- _optionalChain([reownWallet, 'optionalAccess', _60 => _60.isConnected]) || _optionalChain([reownWallet, 'optionalAccess', _61 => _61.address])
2664
+ enableSolana ? _optionalChain([reownWallet, 'optionalAccess', _60 => _60.isConnected]) || _optionalChain([reownWallet, 'optionalAccess', _61 => _61.address]) : _optionalChain([reownWallet, 'optionalAccess', _62 => _62.address])
2655
2665
  );
2656
2666
  const showConnectStep = flowMode === null && !canAutoLock && !isConnectSelectionConfirmed;
2657
2667
  const walletSelectionKey = _react.useMemo.call(void 0, () => {
@@ -2682,7 +2692,7 @@ function DepositFlow({
2682
2692
  };
2683
2693
  }
2684
2694
  if (canAutoLock) {
2685
- const fallbackChainId = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess', _62 => _62.chain, 'optionalAccess', _63 => _63.id]), () => ( targetChain));
2695
+ const fallbackChainId = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess', _63 => _63.chain, 'optionalAccess', _64 => _64.id]), () => ( targetChain));
2686
2696
  return {
2687
2697
  ownerAddress: dappWalletClient.account.address,
2688
2698
  walletClient: dappWalletClient,
@@ -2704,8 +2714,8 @@ function DepositFlow({
2704
2714
  switchChain: void 0
2705
2715
  };
2706
2716
  }
2707
- if (selectedOption.kind === "connected" && _optionalChain([dappWalletClient, 'optionalAccess', _64 => _64.account]) && selectedOption.address && dappWalletClient.account.address.toLowerCase() === selectedOption.address.toLowerCase()) {
2708
- const fallbackChainId = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess', _65 => _65.chain, 'optionalAccess', _66 => _66.id]), () => ( targetChain));
2717
+ if (selectedOption.kind === "connected" && _optionalChain([dappWalletClient, 'optionalAccess', _65 => _65.account]) && selectedOption.address && dappWalletClient.account.address.toLowerCase() === selectedOption.address.toLowerCase()) {
2718
+ const fallbackChainId = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess', _66 => _66.chain, 'optionalAccess', _67 => _67.id]), () => ( targetChain));
2709
2719
  return {
2710
2720
  ownerAddress: dappWalletClient.account.address,
2711
2721
  walletClient: dappWalletClient,
@@ -2713,7 +2723,7 @@ function DepositFlow({
2713
2723
  switchChain: dappSwitchChain
2714
2724
  };
2715
2725
  }
2716
- if (selectedOption.kind === "external" && _optionalChain([reownWallet, 'optionalAccess', _67 => _67.address]) && selectedOption.address && reownWallet.address.toLowerCase() === selectedOption.address.toLowerCase()) {
2726
+ if (selectedOption.kind === "external" && _optionalChain([reownWallet, 'optionalAccess', _68 => _68.address]) && selectedOption.address && reownWallet.address.toLowerCase() === selectedOption.address.toLowerCase()) {
2717
2727
  return {
2718
2728
  ownerAddress: reownWallet.address,
2719
2729
  walletClient: reownWallet.walletClient,
@@ -2777,7 +2787,7 @@ function DepositFlow({
2777
2787
  walletSignerContext,
2778
2788
  walletSelectionKey
2779
2789
  ]);
2780
- const sessionKeyAddress = _nullishCoalesce(_nullishCoalesce(dappAddress, () => ( _optionalChain([signerContext, 'optionalAccess', _68 => _68.ownerAddress]))), () => ( null));
2790
+ const sessionKeyAddress = _nullishCoalesce(_nullishCoalesce(dappAddress, () => ( _optionalChain([signerContext, 'optionalAccess', _69 => _69.ownerAddress]))), () => ( null));
2781
2791
  const lastTargetRef = _react.useRef.call(void 0, null);
2782
2792
  _react.useEffect.call(void 0, () => {
2783
2793
  const prev = lastTargetRef.current;
@@ -2854,7 +2864,7 @@ function DepositFlow({
2854
2864
  const stepIndex = step.type === "setup" ? 0 : step.type === "deposit-address" ? 1 : step.type === "select-asset" ? 1 : step.type === "solana-token-select" ? 1 : step.type === "solana-amount" ? 2 : step.type === "amount" ? 2 : step.type === "confirm" ? 3 : step.type === "solana-confirm" ? 3 : 4;
2855
2865
  const currentBackHandler = step.type === "deposit-address" ? handleBackFromDepositAddress : step.type === "select-asset" && signerContext && !canAutoLock ? handleBackFromSelectAsset : step.type === "solana-token-select" ? handleBackFromSolanaTokenSelect : step.type === "solana-amount" ? handleBackFromSolanaAmount : step.type === "solana-confirm" ? handleBackFromSolanaConfirm : step.type === "amount" ? handleBackFromAmount : step.type === "confirm" ? handleBackFromConfirm : void 0;
2856
2866
  _react.useEffect.call(void 0, () => {
2857
- _optionalChain([onStepChange, 'optionalCall', _69 => _69(stepIndex, currentBackHandler)]);
2867
+ _optionalChain([onStepChange, 'optionalCall', _70 => _70(stepIndex, currentBackHandler)]);
2858
2868
  }, [stepIndex, currentBackHandler, onStepChange]);
2859
2869
  _react.useEffect.call(void 0, () => {
2860
2870
  logFlow("state:changed", {
@@ -2873,7 +2883,7 @@ function DepositFlow({
2873
2883
  targetToken
2874
2884
  ]);
2875
2885
  _react.useEffect.call(void 0, () => {
2876
- _optionalChain([onTotalBalanceChange, 'optionalCall', _70 => _70(totalBalanceUsd)]);
2886
+ _optionalChain([onTotalBalanceChange, 'optionalCall', _71 => _71(totalBalanceUsd)]);
2877
2887
  }, [totalBalanceUsd, onTotalBalanceChange]);
2878
2888
  const isDepositAddressMode = flowMode === "deposit-address";
2879
2889
  const isSolanaWalletMode = flowMode === "solana-wallet";
@@ -2915,7 +2925,7 @@ function DepositFlow({
2915
2925
  solanaDepositAddress
2916
2926
  });
2917
2927
  } else {
2918
- _optionalChain([onError, 'optionalCall', _71 => _71({
2928
+ _optionalChain([onError, 'optionalCall', _72 => _72({
2919
2929
  message: "Solana deposit address not available. Please try again.",
2920
2930
  code: "SOLANA_SETUP_FAILED"
2921
2931
  })]);
@@ -2950,7 +2960,7 @@ function DepositFlow({
2950
2960
  directTransfer
2951
2961
  };
2952
2962
  });
2953
- _optionalChain([onDepositSubmitted, 'optionalCall', _72 => _72({ txHash, sourceChain: chainId, amount })]);
2963
+ _optionalChain([onDepositSubmitted, 'optionalCall', _73 => _73({ txHash, sourceChain: chainId, amount })]);
2954
2964
  },
2955
2965
  [onDepositSubmitted, targetChain, targetToken]
2956
2966
  );
@@ -3022,7 +3032,7 @@ function DepositFlow({
3022
3032
  sourceDecimals: prev.token.decimals
3023
3033
  };
3024
3034
  });
3025
- _optionalChain([onDepositSubmitted, 'optionalCall', _73 => _73({
3035
+ _optionalChain([onDepositSubmitted, 'optionalCall', _74 => _74({
3026
3036
  txHash,
3027
3037
  sourceChain: "solana",
3028
3038
  amount: amountUnits
@@ -3032,7 +3042,7 @@ function DepositFlow({
3032
3042
  );
3033
3043
  const handleConnected = _react.useCallback.call(void 0,
3034
3044
  (addr, smartAccount) => {
3035
- _optionalChain([onConnected, 'optionalCall', _74 => _74({ address: addr, smartAccount })]);
3045
+ _optionalChain([onConnected, 'optionalCall', _75 => _75({ address: addr, smartAccount })]);
3036
3046
  },
3037
3047
  [onConnected]
3038
3048
  );
@@ -3095,28 +3105,28 @@ function DepositFlow({
3095
3105
  );
3096
3106
  const handleDepositSubmittedCallback = _react.useCallback.call(void 0,
3097
3107
  (txHash, sourceChain, amount) => {
3098
- _optionalChain([onDepositSubmitted, 'optionalCall', _75 => _75({ txHash, sourceChain, amount })]);
3108
+ _optionalChain([onDepositSubmitted, 'optionalCall', _76 => _76({ txHash, sourceChain, amount })]);
3099
3109
  },
3100
3110
  [onDepositSubmitted]
3101
3111
  );
3102
3112
  const handleDepositComplete = _react.useCallback.call(void 0,
3103
3113
  (txHash, destinationTxHash) => {
3104
3114
  logFlow("deposit:complete", { txHash, destinationTxHash });
3105
- _optionalChain([onDepositComplete, 'optionalCall', _76 => _76({ txHash, destinationTxHash })]);
3115
+ _optionalChain([onDepositComplete, 'optionalCall', _77 => _77({ txHash, destinationTxHash })]);
3106
3116
  },
3107
3117
  [logFlow, onDepositComplete]
3108
3118
  );
3109
3119
  const handleDepositFailed = _react.useCallback.call(void 0,
3110
3120
  (txHash, error) => {
3111
3121
  logFlowError("deposit:failed", error, { txHash });
3112
- _optionalChain([onDepositFailed, 'optionalCall', _77 => _77({ txHash, error })]);
3122
+ _optionalChain([onDepositFailed, 'optionalCall', _78 => _78({ txHash, error })]);
3113
3123
  },
3114
3124
  [logFlowError, onDepositFailed]
3115
3125
  );
3116
3126
  const handleError = _react.useCallback.call(void 0,
3117
3127
  (message, code) => {
3118
3128
  logFlowError("flow:error", message, { code });
3119
- _optionalChain([onError, 'optionalCall', _78 => _78({ message, code })]);
3129
+ _optionalChain([onError, 'optionalCall', _79 => _79({ message, code })]);
3120
3130
  },
3121
3131
  [logFlowError, onError]
3122
3132
  );
@@ -3153,6 +3163,17 @@ function DepositFlow({
3153
3163
  setFlowMode(null);
3154
3164
  }
3155
3165
  }, [showConnectStep, isConnectSelectionConfirmed, flowMode, signerContext]);
3166
+ _react.useEffect.call(void 0, () => {
3167
+ if (enableSolana || flowMode !== "solana-wallet") {
3168
+ return;
3169
+ }
3170
+ setFlowMode(null);
3171
+ setIsConnectSelectionConfirmed(false);
3172
+ setSelectedWalletId(null);
3173
+ if (step.type !== "processing") {
3174
+ setStep({ type: "setup" });
3175
+ }
3176
+ }, [enableSolana, flowMode, step.type]);
3156
3177
  _react.useEffect.call(void 0, () => {
3157
3178
  if (hasNavigatedBackRef.current || isConnectSelectionConfirmed || flowMode) {
3158
3179
  return;
@@ -3162,7 +3183,7 @@ function DepositFlow({
3162
3183
  if (walletId) {
3163
3184
  const selectedOption = walletOptions.find((o) => o.id === walletId);
3164
3185
  setSelectedWalletId(walletId);
3165
- if (_optionalChain([selectedOption, 'optionalAccess', _79 => _79.kind]) === "solana") {
3186
+ if (enableSolana && _optionalChain([selectedOption, 'optionalAccess', _80 => _80.kind]) === "solana") {
3166
3187
  handleSelectSolanaWallet();
3167
3188
  } else {
3168
3189
  handleSelectProvider();
@@ -3178,6 +3199,7 @@ function DepositFlow({
3178
3199
  }, [
3179
3200
  hasWalletOptions,
3180
3201
  hasReownSession,
3202
+ enableSolana,
3181
3203
  isConnectSelectionConfirmed,
3182
3204
  flowMode,
3183
3205
  selectedWalletIdEffective,
@@ -3209,7 +3231,7 @@ function DepositFlow({
3209
3231
  const selectedOption = walletOptions.find(
3210
3232
  (o) => o.id === selectedWalletIdEffective
3211
3233
  );
3212
- if (_optionalChain([selectedOption, 'optionalAccess', _80 => _80.kind]) === "solana") {
3234
+ if (enableSolana && _optionalChain([selectedOption, 'optionalAccess', _81 => _81.kind]) === "solana") {
3213
3235
  handleSelectSolanaWallet();
3214
3236
  } else {
3215
3237
  handleSelectProvider();
@@ -3233,6 +3255,7 @@ function DepositFlow({
3233
3255
  sessionChainIds,
3234
3256
  recipient,
3235
3257
  forceRegister,
3258
+ enableSolana,
3236
3259
  service,
3237
3260
  onSetupComplete: handleSetupComplete,
3238
3261
  onConnected: handleConnected,
@@ -3243,7 +3266,7 @@ function DepositFlow({
3243
3266
  DepositAddressStep,
3244
3267
  {
3245
3268
  smartAccount: step.smartAccount,
3246
- solanaDepositAddress: step.solanaDepositAddress,
3269
+ solanaDepositAddress: enableSolana ? step.solanaDepositAddress : void 0,
3247
3270
  service,
3248
3271
  onDepositDetected: handleDepositAddressDetected,
3249
3272
  onError: handleError
@@ -3275,8 +3298,8 @@ function DepositFlow({
3275
3298
  }
3276
3299
  if (isSolanaWalletMode) {
3277
3300
  if (!sessionKeyAddress) return null;
3278
- const solanaAddr = _optionalChain([reownWallet, 'optionalAccess', _81 => _81.solanaAddress]);
3279
- const solanaProvider = _optionalChain([reownWallet, 'optionalAccess', _82 => _82.solanaProvider]);
3301
+ const solanaAddr = _optionalChain([reownWallet, 'optionalAccess', _82 => _82.solanaAddress]);
3302
+ const solanaProvider = _optionalChain([reownWallet, 'optionalAccess', _83 => _83.solanaProvider]);
3280
3303
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-modal-body", children: [
3281
3304
  step.type === "setup" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3282
3305
  SetupStep,
@@ -3288,6 +3311,7 @@ function DepositFlow({
3288
3311
  sessionChainIds,
3289
3312
  recipient,
3290
3313
  forceRegister,
3314
+ enableSolana,
3291
3315
  service,
3292
3316
  onSetupComplete: handleSetupComplete,
3293
3317
  onConnected: handleConnected,
@@ -3393,13 +3417,13 @@ function DepositFlow({
3393
3417
  )
3394
3418
  ] });
3395
3419
  }
3396
- if (!_optionalChain([signerContext, 'optionalAccess', _83 => _83.walletClient]) || !_optionalChain([signerContext, 'optionalAccess', _84 => _84.publicClient])) {
3420
+ if (!_optionalChain([signerContext, 'optionalAccess', _84 => _84.walletClient]) || !_optionalChain([signerContext, 'optionalAccess', _85 => _85.publicClient])) {
3397
3421
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-modal-body", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-step", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-loading-state", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-loading-text", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-loading-title", children: "Connecting wallet..." }) }) }) }) });
3398
3422
  }
3399
3423
  const ownerAddress = signerContext.ownerAddress;
3400
- const ownerChainId = _nullishCoalesce(_nullishCoalesce(_optionalChain([signerContext, 'access', _85 => _85.walletClient, 'optionalAccess', _86 => _86.chain, 'optionalAccess', _87 => _87.id]), () => ( _optionalChain([signerContext, 'access', _88 => _88.publicClient, 'access', _89 => _89.chain, 'optionalAccess', _90 => _90.id]))), () => ( targetChain));
3424
+ const ownerChainId = _nullishCoalesce(_nullishCoalesce(_optionalChain([signerContext, 'access', _86 => _86.walletClient, 'optionalAccess', _87 => _87.chain, 'optionalAccess', _88 => _88.id]), () => ( _optionalChain([signerContext, 'access', _89 => _89.publicClient, 'access', _90 => _90.chain, 'optionalAccess', _91 => _91.id]))), () => ( targetChain));
3401
3425
  const getReadClientForChain = (chainId) => {
3402
- if (_optionalChain([signerContext, 'access', _91 => _91.publicClient, 'access', _92 => _92.chain, 'optionalAccess', _93 => _93.id]) === chainId) {
3426
+ if (_optionalChain([signerContext, 'access', _92 => _92.publicClient, 'access', _93 => _93.chain, 'optionalAccess', _94 => _94.id]) === chainId) {
3403
3427
  return signerContext.publicClient;
3404
3428
  }
3405
3429
  return _chunk7HJ7IBRHcjs.getPublicClient.call(void 0, chainId);
@@ -3416,6 +3440,7 @@ function DepositFlow({
3416
3440
  sessionChainIds,
3417
3441
  recipient,
3418
3442
  forceRegister,
3443
+ enableSolana,
3419
3444
  service,
3420
3445
  onSetupComplete: handleSetupComplete,
3421
3446
  onConnected: handleConnected,
@@ -3499,7 +3524,7 @@ function DepositFlow({
3499
3524
  // src/DepositModal.tsx
3500
3525
 
3501
3526
  var ReownDepositInner = _react.lazy.call(void 0,
3502
- () => Promise.resolve().then(() => _interopRequireWildcard(require("./DepositModalReown-AVQEEWEQ.cjs"))).then((m) => ({ default: m.DepositModalReown }))
3527
+ () => Promise.resolve().then(() => _interopRequireWildcard(require("./DepositModalReown-SUED62QO.cjs"))).then((m) => ({ default: m.DepositModalReown }))
3503
3528
  );
3504
3529
  function DepositModal(props) {
3505
3530
  const needsReown = !!props.reownAppId;
@@ -3528,6 +3553,7 @@ function DepositModalInner({
3528
3553
  sessionChainIds,
3529
3554
  forceRegister = false,
3530
3555
  waitForFinalTx = true,
3556
+ enableSolana = true,
3531
3557
  reownWallet,
3532
3558
  onConnect,
3533
3559
  onDisconnect,
@@ -3571,7 +3597,7 @@ function DepositModalInner({
3571
3597
  _react.useEffect.call(void 0, () => {
3572
3598
  if (isOpen && !hasCalledReady.current) {
3573
3599
  hasCalledReady.current = true;
3574
- _optionalChain([onReady, 'optionalCall', _94 => _94()]);
3600
+ _optionalChain([onReady, 'optionalCall', _95 => _95()]);
3575
3601
  }
3576
3602
  }, [isOpen, onReady]);
3577
3603
  _react.useEffect.call(void 0, () => {
@@ -3590,14 +3616,14 @@ function DepositModalInner({
3590
3616
  setTotalBalanceUsd(balance2);
3591
3617
  }, []);
3592
3618
  const handleBack = _react.useCallback.call(void 0, () => {
3593
- _optionalChain([backHandlerRef, 'access', _95 => _95.current, 'optionalCall', _96 => _96()]);
3619
+ _optionalChain([backHandlerRef, 'access', _96 => _96.current, 'optionalCall', _97 => _97()]);
3594
3620
  }, []);
3595
- const showLogo = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _97 => _97.showLogo]), () => ( false));
3596
- const showStepper = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _98 => _98.showStepper]), () => ( false));
3597
- const showBackButton = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _99 => _99.showBackButton]), () => ( true));
3598
- const balance = _optionalChain([uiConfig, 'optionalAccess', _100 => _100.balance]);
3599
- const logoUrl = _nullishCoalesce(_optionalChain([branding, 'optionalAccess', _101 => _101.logoUrl]), () => ( "https://github.com/rhinestonewtf.png"));
3600
- const title = _nullishCoalesce(_optionalChain([branding, 'optionalAccess', _102 => _102.title]), () => ( "Deposit"));
3621
+ const showLogo = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _98 => _98.showLogo]), () => ( false));
3622
+ const showStepper = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _99 => _99.showStepper]), () => ( false));
3623
+ const showBackButton = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _100 => _100.showBackButton]), () => ( true));
3624
+ const balance = _optionalChain([uiConfig, 'optionalAccess', _101 => _101.balance]);
3625
+ const logoUrl = _nullishCoalesce(_optionalChain([branding, 'optionalAccess', _102 => _102.logoUrl]), () => ( "https://github.com/rhinestonewtf.png"));
3626
+ const title = _nullishCoalesce(_optionalChain([branding, 'optionalAccess', _103 => _103.title]), () => ( "Deposit"));
3601
3627
  const canGoBack = currentStepIndex > 0 && currentStepIndex < 4 && backHandlerRef.current !== void 0;
3602
3628
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
3603
3629
  _chunk7HJ7IBRHcjs.Modal,
@@ -3708,6 +3734,7 @@ function DepositModalInner({
3708
3734
  sessionChainIds,
3709
3735
  forceRegister,
3710
3736
  waitForFinalTx,
3737
+ enableSolana,
3711
3738
  reownWallet,
3712
3739
  onConnect,
3713
3740
  onDisconnect,
@@ -84,6 +84,7 @@ function SetupStep({
84
84
  sessionChainIds,
85
85
  recipient,
86
86
  forceRegister,
87
+ enableSolana = true,
87
88
  service,
88
89
  onSetupComplete,
89
90
  onError,
@@ -114,7 +115,10 @@ function SetupStep({
114
115
  if (!setup.needsRegistration) {
115
116
  setState({ type: "ready", smartAccount });
116
117
  onConnected?.(address, smartAccount);
117
- onSetupComplete(smartAccount, setup.solanaDepositAddress);
118
+ onSetupComplete(
119
+ smartAccount,
120
+ enableSolana ? setup.solanaDepositAddress : void 0
121
+ );
118
122
  return;
119
123
  }
120
124
  setState({ type: "signing-session" });
@@ -150,7 +154,10 @@ function SetupStep({
150
154
  });
151
155
  setState({ type: "ready", smartAccount });
152
156
  onConnected?.(address, smartAccount);
153
- onSetupComplete(smartAccount, registerResult.solanaDepositAddress);
157
+ onSetupComplete(
158
+ smartAccount,
159
+ enableSolana ? registerResult.solanaDepositAddress : void 0
160
+ );
154
161
  } catch (error) {
155
162
  const message = error instanceof Error ? error.message : "Setup failed";
156
163
  setState({ type: "error", message });
@@ -165,6 +172,7 @@ function SetupStep({
165
172
  sessionChainIds,
166
173
  recipient,
167
174
  forceRegister,
175
+ enableSolana,
168
176
  service,
169
177
  onSetupComplete,
170
178
  onError,
@@ -2535,6 +2543,7 @@ function DepositFlow({
2535
2543
  sessionChainIds,
2536
2544
  forceRegister = false,
2537
2545
  waitForFinalTx = true,
2546
+ enableSolana = true,
2538
2547
  reownWallet,
2539
2548
  onConnect,
2540
2549
  onDisconnect,
@@ -2610,7 +2619,7 @@ function DepositFlow({
2610
2619
  });
2611
2620
  seen.add(id);
2612
2621
  }
2613
- if (reownWallet?.isConnected && reownWallet.isSolana && reownWallet.solanaAddress && dappAddress) {
2622
+ if (enableSolana && reownWallet?.isConnected && reownWallet.isSolana && reownWallet.solanaAddress && dappAddress) {
2614
2623
  const id = reownWallet.caipAddress ?? `solana:${reownWallet.solanaAddress}`;
2615
2624
  if (!seen.has(id)) {
2616
2625
  options.push({
@@ -2644,6 +2653,7 @@ function DepositFlow({
2644
2653
  reownWallet?.walletClient,
2645
2654
  reownWallet?.publicClient,
2646
2655
  reownWallet?.icon,
2656
+ enableSolana,
2647
2657
  reownWallet?.isSolana,
2648
2658
  reownWallet?.solanaAddress,
2649
2659
  reownWallet?.caipAddress
@@ -2651,7 +2661,7 @@ function DepositFlow({
2651
2661
  const canAutoLock = dappWalletClient?.account && dappAddress && !reownWallet;
2652
2662
  const hasWalletOptions = walletOptions.length > 0;
2653
2663
  const hasReownSession = Boolean(
2654
- reownWallet?.isConnected || reownWallet?.address
2664
+ enableSolana ? reownWallet?.isConnected || reownWallet?.address : reownWallet?.address
2655
2665
  );
2656
2666
  const showConnectStep = flowMode === null && !canAutoLock && !isConnectSelectionConfirmed;
2657
2667
  const walletSelectionKey = useMemo7(() => {
@@ -3153,6 +3163,17 @@ function DepositFlow({
3153
3163
  setFlowMode(null);
3154
3164
  }
3155
3165
  }, [showConnectStep, isConnectSelectionConfirmed, flowMode, signerContext]);
3166
+ useEffect9(() => {
3167
+ if (enableSolana || flowMode !== "solana-wallet") {
3168
+ return;
3169
+ }
3170
+ setFlowMode(null);
3171
+ setIsConnectSelectionConfirmed(false);
3172
+ setSelectedWalletId(null);
3173
+ if (step.type !== "processing") {
3174
+ setStep({ type: "setup" });
3175
+ }
3176
+ }, [enableSolana, flowMode, step.type]);
3156
3177
  useEffect9(() => {
3157
3178
  if (hasNavigatedBackRef.current || isConnectSelectionConfirmed || flowMode) {
3158
3179
  return;
@@ -3162,7 +3183,7 @@ function DepositFlow({
3162
3183
  if (walletId) {
3163
3184
  const selectedOption = walletOptions.find((o) => o.id === walletId);
3164
3185
  setSelectedWalletId(walletId);
3165
- if (selectedOption?.kind === "solana") {
3186
+ if (enableSolana && selectedOption?.kind === "solana") {
3166
3187
  handleSelectSolanaWallet();
3167
3188
  } else {
3168
3189
  handleSelectProvider();
@@ -3178,6 +3199,7 @@ function DepositFlow({
3178
3199
  }, [
3179
3200
  hasWalletOptions,
3180
3201
  hasReownSession,
3202
+ enableSolana,
3181
3203
  isConnectSelectionConfirmed,
3182
3204
  flowMode,
3183
3205
  selectedWalletIdEffective,
@@ -3209,7 +3231,7 @@ function DepositFlow({
3209
3231
  const selectedOption = walletOptions.find(
3210
3232
  (o) => o.id === selectedWalletIdEffective
3211
3233
  );
3212
- if (selectedOption?.kind === "solana") {
3234
+ if (enableSolana && selectedOption?.kind === "solana") {
3213
3235
  handleSelectSolanaWallet();
3214
3236
  } else {
3215
3237
  handleSelectProvider();
@@ -3233,6 +3255,7 @@ function DepositFlow({
3233
3255
  sessionChainIds,
3234
3256
  recipient,
3235
3257
  forceRegister,
3258
+ enableSolana,
3236
3259
  service,
3237
3260
  onSetupComplete: handleSetupComplete,
3238
3261
  onConnected: handleConnected,
@@ -3243,7 +3266,7 @@ function DepositFlow({
3243
3266
  DepositAddressStep,
3244
3267
  {
3245
3268
  smartAccount: step.smartAccount,
3246
- solanaDepositAddress: step.solanaDepositAddress,
3269
+ solanaDepositAddress: enableSolana ? step.solanaDepositAddress : void 0,
3247
3270
  service,
3248
3271
  onDepositDetected: handleDepositAddressDetected,
3249
3272
  onError: handleError
@@ -3288,6 +3311,7 @@ function DepositFlow({
3288
3311
  sessionChainIds,
3289
3312
  recipient,
3290
3313
  forceRegister,
3314
+ enableSolana,
3291
3315
  service,
3292
3316
  onSetupComplete: handleSetupComplete,
3293
3317
  onConnected: handleConnected,
@@ -3416,6 +3440,7 @@ function DepositFlow({
3416
3440
  sessionChainIds,
3417
3441
  recipient,
3418
3442
  forceRegister,
3443
+ enableSolana,
3419
3444
  service,
3420
3445
  onSetupComplete: handleSetupComplete,
3421
3446
  onConnected: handleConnected,
@@ -3499,7 +3524,7 @@ function DepositFlow({
3499
3524
  // src/DepositModal.tsx
3500
3525
  import { jsx as jsx11, jsxs as jsxs11 } from "react/jsx-runtime";
3501
3526
  var ReownDepositInner = lazy(
3502
- () => import("./DepositModalReown-PWD3WK7I.mjs").then((m) => ({ default: m.DepositModalReown }))
3527
+ () => import("./DepositModalReown-EKRWDULN.mjs").then((m) => ({ default: m.DepositModalReown }))
3503
3528
  );
3504
3529
  function DepositModal(props) {
3505
3530
  const needsReown = !!props.reownAppId;
@@ -3528,6 +3553,7 @@ function DepositModalInner({
3528
3553
  sessionChainIds,
3529
3554
  forceRegister = false,
3530
3555
  waitForFinalTx = true,
3556
+ enableSolana = true,
3531
3557
  reownWallet,
3532
3558
  onConnect,
3533
3559
  onDisconnect,
@@ -3708,6 +3734,7 @@ function DepositModalInner({
3708
3734
  sessionChainIds,
3709
3735
  forceRegister,
3710
3736
  waitForFinalTx,
3737
+ enableSolana,
3711
3738
  reownWallet,
3712
3739
  onConnect,
3713
3740
  onDisconnect,
@@ -24,12 +24,8 @@ var EVM_NETWORKS = [
24
24
  polygon,
25
25
  bsc
26
26
  ];
27
- var ALL_NETWORKS = [
28
- ...EVM_NETWORKS,
29
- solana
30
- ];
31
27
  var cachedAdapter = null;
32
- var cachedProjectId = null;
28
+ var cachedAdapterKey = null;
33
29
  function mapTheme(theme) {
34
30
  const themeMode = theme?.mode === "light" ? "light" : "dark";
35
31
  const themeVariables = {};
@@ -38,18 +34,20 @@ function mapTheme(theme) {
38
34
  }
39
35
  return { themeMode, themeVariables };
40
36
  }
41
- function getOrCreateAdapter(projectId, theme) {
42
- if (cachedAdapter && cachedProjectId === projectId) return cachedAdapter;
37
+ function getOrCreateAdapter(projectId, enableSolana, theme) {
38
+ const adapterKey = `${projectId}:${enableSolana ? "solana" : "evm"}`;
39
+ if (cachedAdapter && cachedAdapterKey === adapterKey) return cachedAdapter;
43
40
  cachedAdapter = new WagmiAdapter({
44
41
  networks: EVM_NETWORKS,
45
42
  projectId
46
43
  });
47
- cachedProjectId = projectId;
48
- const solanaAdapter = new SolanaAdapter();
44
+ cachedAdapterKey = adapterKey;
49
45
  const { themeMode, themeVariables } = mapTheme(theme);
46
+ const adapters = enableSolana ? [cachedAdapter, new SolanaAdapter()] : [cachedAdapter];
47
+ const networks = enableSolana ? [...EVM_NETWORKS, solana] : EVM_NETWORKS;
50
48
  createAppKit({
51
- adapters: [cachedAdapter, solanaAdapter],
52
- networks: ALL_NETWORKS,
49
+ adapters,
50
+ networks,
53
51
  projectId,
54
52
  themeMode,
55
53
  themeVariables,
@@ -65,10 +63,11 @@ function getOrCreateAdapter(projectId, theme) {
65
63
  function ReownWalletProvider({
66
64
  projectId,
67
65
  theme,
66
+ enableSolana = true,
68
67
  children
69
68
  }) {
70
69
  const [queryClient] = useState(() => new QueryClient());
71
- const adapter = getOrCreateAdapter(projectId, theme);
70
+ const adapter = getOrCreateAdapter(projectId, enableSolana, theme);
72
71
  const config = adapter.wagmiConfig;
73
72
  return /* @__PURE__ */ jsx(WagmiProvider, { config, children: /* @__PURE__ */ jsx(QueryClientProvider, { client: queryClient, children }) });
74
73
  }
@@ -24,12 +24,8 @@ var EVM_NETWORKS = [
24
24
  _networks.polygon,
25
25
  _networks.bsc
26
26
  ];
27
- var ALL_NETWORKS = [
28
- ...EVM_NETWORKS,
29
- _networks.solana
30
- ];
31
27
  var cachedAdapter = null;
32
- var cachedProjectId = null;
28
+ var cachedAdapterKey = null;
33
29
  function mapTheme(theme) {
34
30
  const themeMode = _optionalChain([theme, 'optionalAccess', _ => _.mode]) === "light" ? "light" : "dark";
35
31
  const themeVariables = {};
@@ -38,18 +34,20 @@ function mapTheme(theme) {
38
34
  }
39
35
  return { themeMode, themeVariables };
40
36
  }
41
- function getOrCreateAdapter(projectId, theme) {
42
- if (cachedAdapter && cachedProjectId === projectId) return cachedAdapter;
37
+ function getOrCreateAdapter(projectId, enableSolana, theme) {
38
+ const adapterKey = `${projectId}:${enableSolana ? "solana" : "evm"}`;
39
+ if (cachedAdapter && cachedAdapterKey === adapterKey) return cachedAdapter;
43
40
  cachedAdapter = new (0, _appkitadapterwagmi.WagmiAdapter)({
44
41
  networks: EVM_NETWORKS,
45
42
  projectId
46
43
  });
47
- cachedProjectId = projectId;
48
- const solanaAdapter = new (0, _appkitadaptersolana.SolanaAdapter)();
44
+ cachedAdapterKey = adapterKey;
49
45
  const { themeMode, themeVariables } = mapTheme(theme);
46
+ const adapters = enableSolana ? [cachedAdapter, new (0, _appkitadaptersolana.SolanaAdapter)()] : [cachedAdapter];
47
+ const networks = enableSolana ? [...EVM_NETWORKS, _networks.solana] : EVM_NETWORKS;
50
48
  _react3.createAppKit.call(void 0, {
51
- adapters: [cachedAdapter, solanaAdapter],
52
- networks: ALL_NETWORKS,
49
+ adapters,
50
+ networks,
53
51
  projectId,
54
52
  themeMode,
55
53
  themeVariables,
@@ -65,10 +63,11 @@ function getOrCreateAdapter(projectId, theme) {
65
63
  function ReownWalletProvider({
66
64
  projectId,
67
65
  theme,
66
+ enableSolana = true,
68
67
  children
69
68
  }) {
70
69
  const [queryClient] = _react.useState.call(void 0, () => new (0, _reactquery.QueryClient)());
71
- const adapter = getOrCreateAdapter(projectId, theme);
70
+ const adapter = getOrCreateAdapter(projectId, enableSolana, theme);
72
71
  const config = adapter.wagmiConfig;
73
72
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _wagmi.WagmiProvider, { config, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactquery.QueryClientProvider, { client: queryClient, children }) });
74
73
  }
package/dist/deposit.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkKOYHFHYWcjs = require('./chunk-KOYHFHYW.cjs');
3
+ var _chunkHXNHL64Vcjs = require('./chunk-HXNHL64V.cjs');
4
4
  require('./chunk-7HJ7IBRH.cjs');
5
5
  require('./chunk-NELAYNA3.cjs');
6
6
 
7
7
 
8
- exports.DepositModal = _chunkKOYHFHYWcjs.DepositModal;
8
+ exports.DepositModal = _chunkHXNHL64Vcjs.DepositModal;
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { d as DepositModalProps } from './types-dY70pF2y.cjs';
3
- export { A as AssetOption, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData } from './types-dY70pF2y.cjs';
2
+ import { d as DepositModalProps } from './types-C2uBaYtU.cjs';
3
+ export { A as AssetOption, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData } from './types-C2uBaYtU.cjs';
4
4
  import 'viem';
5
5
  import './safe.cjs';
6
6
 
package/dist/deposit.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { d as DepositModalProps } from './types-B0FLVdXb.js';
3
- export { A as AssetOption, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData } from './types-B0FLVdXb.js';
2
+ import { d as DepositModalProps } from './types-Qv3sYfjZ.js';
3
+ export { A as AssetOption, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData } from './types-Qv3sYfjZ.js';
4
4
  import 'viem';
5
5
  import './safe.js';
6
6
 
package/dist/deposit.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  DepositModal
3
- } from "./chunk-QLLL6ARN.mjs";
3
+ } from "./chunk-N5BRA3ZN.mjs";
4
4
  import "./chunk-FKNYONM2.mjs";
5
5
  import "./chunk-ZJQZEIHA.mjs";
6
6
  export {
package/dist/index.cjs CHANGED
@@ -1,9 +1,9 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkKOYHFHYWcjs = require('./chunk-KOYHFHYW.cjs');
3
+ var _chunkHXNHL64Vcjs = require('./chunk-HXNHL64V.cjs');
4
4
 
5
5
 
6
- var _chunkPW55TOFKcjs = require('./chunk-PW55TOFK.cjs');
6
+ var _chunkCTZVI5NRcjs = require('./chunk-CTZVI5NR.cjs');
7
7
  require('./chunk-7HJ7IBRH.cjs');
8
8
 
9
9
 
@@ -66,4 +66,4 @@ var _chunkNELAYNA3cjs = require('./chunk-NELAYNA3.cjs');
66
66
 
67
67
 
68
68
 
69
- exports.CHAIN_BY_ID = _chunkNELAYNA3cjs.CHAIN_BY_ID; exports.DEFAULT_BACKEND_URL = _chunkNELAYNA3cjs.DEFAULT_BACKEND_URL; exports.DEFAULT_SIGNER_ADDRESS = _chunkNELAYNA3cjs.DEFAULT_SIGNER_ADDRESS; exports.DepositModal = _chunkKOYHFHYWcjs.DepositModal; exports.NATIVE_TOKEN_ADDRESS = _chunkNELAYNA3cjs.NATIVE_TOKEN_ADDRESS; exports.SOURCE_CHAINS = _chunkNELAYNA3cjs.SOURCE_CHAINS; exports.SUPPORTED_CHAINS = _chunkNELAYNA3cjs.SUPPORTED_CHAINS; exports.WithdrawModal = _chunkPW55TOFKcjs.WithdrawModal; exports.chainRegistry = _chunkNELAYNA3cjs.chainRegistry; exports.findChainIdForToken = _chunkNELAYNA3cjs.findChainIdForToken; exports.getChainBadge = _chunkNELAYNA3cjs.getChainBadge; exports.getChainIcon = _chunkNELAYNA3cjs.getChainIcon; exports.getChainId = _chunkNELAYNA3cjs.getChainId; exports.getChainName = _chunkNELAYNA3cjs.getChainName; exports.getChainObject = _chunkNELAYNA3cjs.getChainObject; exports.getExplorerName = _chunkNELAYNA3cjs.getExplorerName; exports.getExplorerTxUrl = _chunkNELAYNA3cjs.getExplorerTxUrl; exports.getExplorerUrl = _chunkNELAYNA3cjs.getExplorerUrl; exports.getSupportedChainIds = _chunkNELAYNA3cjs.getSupportedChainIds; exports.getSupportedTargetTokens = _chunkNELAYNA3cjs.getSupportedTargetTokens; exports.getSupportedTokenSymbolsForChain = _chunkNELAYNA3cjs.getSupportedTokenSymbolsForChain; exports.getTargetTokenSymbolsForChain = _chunkNELAYNA3cjs.getTargetTokenSymbolsForChain; exports.getTokenAddress = _chunkNELAYNA3cjs.getTokenAddress; exports.getTokenDecimals = _chunkNELAYNA3cjs.getTokenDecimals; exports.getTokenDecimalsByAddress = _chunkNELAYNA3cjs.getTokenDecimalsByAddress; exports.getTokenIcon = _chunkNELAYNA3cjs.getTokenIcon; exports.getTokenSymbol = _chunkNELAYNA3cjs.getTokenSymbol; exports.getUsdcAddress = _chunkNELAYNA3cjs.getUsdcAddress; exports.getUsdcDecimals = _chunkNELAYNA3cjs.getUsdcDecimals; exports.isSupportedTokenAddressForChain = _chunkNELAYNA3cjs.isSupportedTokenAddressForChain;
69
+ exports.CHAIN_BY_ID = _chunkNELAYNA3cjs.CHAIN_BY_ID; exports.DEFAULT_BACKEND_URL = _chunkNELAYNA3cjs.DEFAULT_BACKEND_URL; exports.DEFAULT_SIGNER_ADDRESS = _chunkNELAYNA3cjs.DEFAULT_SIGNER_ADDRESS; exports.DepositModal = _chunkHXNHL64Vcjs.DepositModal; exports.NATIVE_TOKEN_ADDRESS = _chunkNELAYNA3cjs.NATIVE_TOKEN_ADDRESS; exports.SOURCE_CHAINS = _chunkNELAYNA3cjs.SOURCE_CHAINS; exports.SUPPORTED_CHAINS = _chunkNELAYNA3cjs.SUPPORTED_CHAINS; exports.WithdrawModal = _chunkCTZVI5NRcjs.WithdrawModal; exports.chainRegistry = _chunkNELAYNA3cjs.chainRegistry; exports.findChainIdForToken = _chunkNELAYNA3cjs.findChainIdForToken; exports.getChainBadge = _chunkNELAYNA3cjs.getChainBadge; exports.getChainIcon = _chunkNELAYNA3cjs.getChainIcon; exports.getChainId = _chunkNELAYNA3cjs.getChainId; exports.getChainName = _chunkNELAYNA3cjs.getChainName; exports.getChainObject = _chunkNELAYNA3cjs.getChainObject; exports.getExplorerName = _chunkNELAYNA3cjs.getExplorerName; exports.getExplorerTxUrl = _chunkNELAYNA3cjs.getExplorerTxUrl; exports.getExplorerUrl = _chunkNELAYNA3cjs.getExplorerUrl; exports.getSupportedChainIds = _chunkNELAYNA3cjs.getSupportedChainIds; exports.getSupportedTargetTokens = _chunkNELAYNA3cjs.getSupportedTargetTokens; exports.getSupportedTokenSymbolsForChain = _chunkNELAYNA3cjs.getSupportedTokenSymbolsForChain; exports.getTargetTokenSymbolsForChain = _chunkNELAYNA3cjs.getTargetTokenSymbolsForChain; exports.getTokenAddress = _chunkNELAYNA3cjs.getTokenAddress; exports.getTokenDecimals = _chunkNELAYNA3cjs.getTokenDecimals; exports.getTokenDecimalsByAddress = _chunkNELAYNA3cjs.getTokenDecimalsByAddress; exports.getTokenIcon = _chunkNELAYNA3cjs.getTokenIcon; exports.getTokenSymbol = _chunkNELAYNA3cjs.getTokenSymbol; exports.getUsdcAddress = _chunkNELAYNA3cjs.getUsdcAddress; exports.getUsdcDecimals = _chunkNELAYNA3cjs.getUsdcDecimals; exports.isSupportedTokenAddressForChain = _chunkNELAYNA3cjs.isSupportedTokenAddressForChain;
package/dist/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { DepositModal } from './deposit.cjs';
2
2
  export { WithdrawModal } from './withdraw.cjs';
3
- export { A as AssetOption, C as ChainId, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, d as DepositModalProps, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData, R as RouteConfig, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, i as WithdrawModalProps, j as WithdrawSubmittedEventData } from './types-dY70pF2y.cjs';
3
+ export { A as AssetOption, C as ChainId, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, d as DepositModalProps, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData, R as RouteConfig, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, i as WithdrawModalProps, j as WithdrawSubmittedEventData } from './types-C2uBaYtU.cjs';
4
4
  export { CHAIN_BY_ID, DEFAULT_BACKEND_URL, DEFAULT_SIGNER_ADDRESS, NATIVE_TOKEN_ADDRESS, SOURCE_CHAINS, SUPPORTED_CHAINS, chainRegistry, findChainIdForToken, getChainBadge, getChainIcon, getChainId, getChainName, getChainObject, getExplorerName, getExplorerTxUrl, getExplorerUrl, getSupportedChainIds, getSupportedTargetTokens, getSupportedTokenSymbolsForChain, getTargetTokenSymbolsForChain, getTokenAddress, getTokenDecimals, getTokenDecimalsByAddress, getTokenIcon, getTokenSymbol, getUsdcAddress, getUsdcDecimals, isSupportedTokenAddressForChain } from './constants.cjs';
5
5
  export { SafeTransactionRequest } from './safe.cjs';
6
6
  import 'react/jsx-runtime';
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { DepositModal } from './deposit.js';
2
2
  export { WithdrawModal } from './withdraw.js';
3
- export { A as AssetOption, C as ChainId, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, d as DepositModalProps, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData, R as RouteConfig, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, i as WithdrawModalProps, j as WithdrawSubmittedEventData } from './types-B0FLVdXb.js';
3
+ export { A as AssetOption, C as ChainId, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, d as DepositModalProps, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData, R as RouteConfig, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, i as WithdrawModalProps, j as WithdrawSubmittedEventData } from './types-Qv3sYfjZ.js';
4
4
  export { CHAIN_BY_ID, DEFAULT_BACKEND_URL, DEFAULT_SIGNER_ADDRESS, NATIVE_TOKEN_ADDRESS, SOURCE_CHAINS, SUPPORTED_CHAINS, chainRegistry, findChainIdForToken, getChainBadge, getChainIcon, getChainId, getChainName, getChainObject, getExplorerName, getExplorerTxUrl, getExplorerUrl, getSupportedChainIds, getSupportedTargetTokens, getSupportedTokenSymbolsForChain, getTargetTokenSymbolsForChain, getTokenAddress, getTokenDecimals, getTokenDecimalsByAddress, getTokenIcon, getTokenSymbol, getUsdcAddress, getUsdcDecimals, isSupportedTokenAddressForChain } from './constants.js';
5
5
  export { SafeTransactionRequest } from './safe.js';
6
6
  import 'react/jsx-runtime';
package/dist/index.mjs CHANGED
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  DepositModal
3
- } from "./chunk-QLLL6ARN.mjs";
3
+ } from "./chunk-N5BRA3ZN.mjs";
4
4
  import {
5
5
  WithdrawModal
6
- } from "./chunk-HCZNF6CR.mjs";
6
+ } from "./chunk-GZIGVCI2.mjs";
7
7
  import "./chunk-FKNYONM2.mjs";
8
8
  import {
9
9
  CHAIN_BY_ID,
package/dist/reown.cjs CHANGED
@@ -1,12 +1,12 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkKOYHFHYWcjs = require('./chunk-KOYHFHYW.cjs');
3
+ var _chunkHXNHL64Vcjs = require('./chunk-HXNHL64V.cjs');
4
4
 
5
5
 
6
- var _chunkPW55TOFKcjs = require('./chunk-PW55TOFK.cjs');
6
+ var _chunkCTZVI5NRcjs = require('./chunk-CTZVI5NR.cjs');
7
7
  require('./chunk-7HJ7IBRH.cjs');
8
8
  require('./chunk-NELAYNA3.cjs');
9
9
 
10
10
 
11
11
 
12
- exports.DepositModal = _chunkKOYHFHYWcjs.DepositModal; exports.WithdrawModal = _chunkPW55TOFKcjs.WithdrawModal;
12
+ exports.DepositModal = _chunkHXNHL64Vcjs.DepositModal; exports.WithdrawModal = _chunkCTZVI5NRcjs.WithdrawModal;
package/dist/reown.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { DepositModal } from './deposit.cjs';
2
2
  export { WithdrawModal } from './withdraw.cjs';
3
- export { A as AssetOption, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, d as DepositModalProps, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, i as WithdrawModalProps, j as WithdrawSubmittedEventData } from './types-dY70pF2y.cjs';
3
+ export { A as AssetOption, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, d as DepositModalProps, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, i as WithdrawModalProps, j as WithdrawSubmittedEventData } from './types-C2uBaYtU.cjs';
4
4
  export { SafeTransactionRequest } from './safe.cjs';
5
5
  import 'react/jsx-runtime';
6
6
  import 'viem';
package/dist/reown.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { DepositModal } from './deposit.js';
2
2
  export { WithdrawModal } from './withdraw.js';
3
- export { A as AssetOption, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, d as DepositModalProps, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, i as WithdrawModalProps, j as WithdrawSubmittedEventData } from './types-B0FLVdXb.js';
3
+ export { A as AssetOption, a as ConnectedEventData, D as DepositCompleteEventData, b as DepositFailedEventData, c as DepositModalBranding, d as DepositModalProps, e as DepositModalTheme, f as DepositModalUIConfig, g as DepositSubmittedEventData, E as ErrorEventData, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, i as WithdrawModalProps, j as WithdrawSubmittedEventData } from './types-Qv3sYfjZ.js';
4
4
  export { SafeTransactionRequest } from './safe.js';
5
5
  import 'react/jsx-runtime';
6
6
  import 'viem';
package/dist/reown.mjs CHANGED
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  DepositModal
3
- } from "./chunk-QLLL6ARN.mjs";
3
+ } from "./chunk-N5BRA3ZN.mjs";
4
4
  import {
5
5
  WithdrawModal
6
- } from "./chunk-HCZNF6CR.mjs";
6
+ } from "./chunk-GZIGVCI2.mjs";
7
7
  import "./chunk-FKNYONM2.mjs";
8
8
  import "./chunk-ZJQZEIHA.mjs";
9
9
  export {
@@ -88,6 +88,7 @@ interface DepositModalProps {
88
88
  forceRegister?: boolean;
89
89
  waitForFinalTx?: boolean;
90
90
  reownAppId?: string;
91
+ enableSolana?: boolean;
91
92
  onRequestConnect?: () => void;
92
93
  connectButtonLabel?: string;
93
94
  theme?: DepositModalTheme;
@@ -88,6 +88,7 @@ interface DepositModalProps {
88
88
  forceRegister?: boolean;
89
89
  waitForFinalTx?: boolean;
90
90
  reownAppId?: string;
91
+ enableSolana?: boolean;
91
92
  onRequestConnect?: () => void;
92
93
  connectButtonLabel?: string;
93
94
  theme?: DepositModalTheme;
package/dist/withdraw.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkPW55TOFKcjs = require('./chunk-PW55TOFK.cjs');
3
+ var _chunkCTZVI5NRcjs = require('./chunk-CTZVI5NR.cjs');
4
4
  require('./chunk-7HJ7IBRH.cjs');
5
5
  require('./chunk-NELAYNA3.cjs');
6
6
 
7
7
 
8
- exports.WithdrawModal = _chunkPW55TOFKcjs.WithdrawModal;
8
+ exports.WithdrawModal = _chunkCTZVI5NRcjs.WithdrawModal;
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { i as WithdrawModalProps } from './types-dY70pF2y.cjs';
3
- export { A as AssetOption, a as ConnectedEventData, E as ErrorEventData, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, j as WithdrawSubmittedEventData } from './types-dY70pF2y.cjs';
2
+ import { i as WithdrawModalProps } from './types-C2uBaYtU.cjs';
3
+ export { A as AssetOption, a as ConnectedEventData, E as ErrorEventData, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, j as WithdrawSubmittedEventData } from './types-C2uBaYtU.cjs';
4
4
  export { SafeTransactionRequest } from './safe.cjs';
5
5
  import 'viem';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { i as WithdrawModalProps } from './types-B0FLVdXb.js';
3
- export { A as AssetOption, a as ConnectedEventData, E as ErrorEventData, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, j as WithdrawSubmittedEventData } from './types-B0FLVdXb.js';
2
+ import { i as WithdrawModalProps } from './types-Qv3sYfjZ.js';
3
+ export { A as AssetOption, a as ConnectedEventData, E as ErrorEventData, W as WithdrawCompleteEventData, h as WithdrawFailedEventData, j as WithdrawSubmittedEventData } from './types-Qv3sYfjZ.js';
4
4
  export { SafeTransactionRequest } from './safe.js';
5
5
  import 'viem';
6
6
 
package/dist/withdraw.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  WithdrawModal
3
- } from "./chunk-HCZNF6CR.mjs";
3
+ } from "./chunk-GZIGVCI2.mjs";
4
4
  import "./chunk-FKNYONM2.mjs";
5
5
  import "./chunk-ZJQZEIHA.mjs";
6
6
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rhinestone/deposit-modal",
3
- "version": "0.1.49",
3
+ "version": "0.1.50",
4
4
  "description": "React modal component for Rhinestone cross-chain deposits",
5
5
  "author": "Rhinestone <dev@rhinestone.wtf>",
6
6
  "bugs": {