@rhinestone/deposit-modal 0.1.26 → 0.1.27

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.
@@ -1,11 +1,9 @@
1
1
  import {
2
2
  CHAIN_BY_ID,
3
3
  NATIVE_TOKEN_ADDRESS,
4
- SUPPORTED_CHAINS,
5
4
  getChainIcon,
6
5
  getChainName,
7
6
  getExplorerTxUrl,
8
- getSupportedTokenSymbolsForChain,
9
7
  getTokenAddress,
10
8
  getTokenDecimalsByAddress,
11
9
  getTokenSymbol,
@@ -146,6 +144,67 @@ Modal.displayName = "Modal";
146
144
  function jsonReplacer(_key, value) {
147
145
  return typeof value === "bigint" ? value.toString() : value;
148
146
  }
147
+ function asRecord(value) {
148
+ return typeof value === "object" && value !== null ? value : null;
149
+ }
150
+ function toBigInt(value) {
151
+ if (typeof value === "bigint") return value;
152
+ if (typeof value === "number" && Number.isInteger(value)) return BigInt(value);
153
+ if (typeof value === "string" && value.trim() !== "") return BigInt(value);
154
+ throw new Error("Invalid bigint value");
155
+ }
156
+ function normalizeSessionTypedData(raw) {
157
+ const data = structuredClone(raw);
158
+ const domain = asRecord(data.domain);
159
+ if (domain && domain.chainId !== void 0 && domain.chainId !== null) {
160
+ domain.chainId = toBigInt(domain.chainId);
161
+ }
162
+ const message = asRecord(data.message);
163
+ if (!message || !Array.isArray(message.sessionsAndChainIds)) {
164
+ return data;
165
+ }
166
+ for (const entry of message.sessionsAndChainIds) {
167
+ const chainSession = asRecord(entry);
168
+ if (!chainSession) continue;
169
+ if (chainSession.chainId !== void 0 && chainSession.chainId !== null) {
170
+ chainSession.chainId = toBigInt(chainSession.chainId);
171
+ }
172
+ const session = asRecord(chainSession.session);
173
+ if (!session) continue;
174
+ if (session.nonce !== void 0 && session.nonce !== null) {
175
+ session.nonce = toBigInt(session.nonce);
176
+ }
177
+ if (session.expires !== void 0 && session.expires !== null) {
178
+ session.expires = toBigInt(session.expires);
179
+ }
180
+ }
181
+ return data;
182
+ }
183
+ function normalizePrepareAccountResponse(raw) {
184
+ const data = raw;
185
+ return {
186
+ smartAccount: data.smartAccount,
187
+ accountParams: data.accountParams,
188
+ sessionDetailsUnsigned: {
189
+ hashesAndChainIds: data.sessionDetailsUnsigned.hashesAndChainIds.map(
190
+ (h) => ({
191
+ chainId: toBigInt(h.chainId),
192
+ sessionDigest: h.sessionDigest
193
+ })
194
+ ),
195
+ data: normalizeSessionTypedData(data.sessionDetailsUnsigned.data)
196
+ }
197
+ };
198
+ }
199
+ function buildSessionDetails(unsigned, signature) {
200
+ return {
201
+ hashesAndChainIds: unsigned.hashesAndChainIds.map((h) => ({
202
+ chainId: toBigInt(h.chainId),
203
+ sessionDigest: h.sessionDigest
204
+ })),
205
+ signature
206
+ };
207
+ }
149
208
  function createDepositService(baseUrl) {
150
209
  const normalizedBaseUrl = baseUrl.replace(/\/$/, "");
151
210
  function apiUrl(path) {
@@ -153,6 +212,20 @@ function createDepositService(baseUrl) {
153
212
  return `${normalizedBaseUrl}${normalizedPath}`;
154
213
  }
155
214
  return {
215
+ async computeAddress(ownerAddress, sessionOwnerAddress) {
216
+ const response = await fetch(apiUrl("/compute-address"), {
217
+ method: "POST",
218
+ headers: { "Content-Type": "application/json" },
219
+ body: JSON.stringify({ ownerAddress, sessionOwnerAddress })
220
+ });
221
+ if (!response.ok) {
222
+ const error = await response.json().catch(() => ({ error: "Unknown error" }));
223
+ throw new Error(
224
+ error.error || `Compute address failed: ${response.status}`
225
+ );
226
+ }
227
+ return response.json();
228
+ },
156
229
  async prepareAccount(params) {
157
230
  const response = await fetch(apiUrl("/prepare-account"), {
158
231
  method: "POST",
@@ -165,7 +238,7 @@ function createDepositService(baseUrl) {
165
238
  error.error || `Prepare account failed: ${response.status}`
166
239
  );
167
240
  }
168
- return response.json();
241
+ return normalizePrepareAccountResponse(await response.json());
169
242
  },
170
243
  async registerAccount(params) {
171
244
  const { eoaAddress, sessionOwner, ...account } = params;
@@ -817,203 +890,6 @@ function ConnectStep({
817
890
  }
818
891
  ConnectStep.displayName = "ConnectStep";
819
892
 
820
- // src/core/account.ts
821
- import {
822
- RhinestoneSDK
823
- } from "@rhinestone/sdk";
824
- import { zeroAddress } from "viem";
825
- import { toAccount } from "viem/accounts";
826
- function createViewOnlyAccount(address) {
827
- if (!address || address === zeroAddress) {
828
- throw new Error("Address is required");
829
- }
830
- return toAccount({
831
- address,
832
- signMessage: async () => {
833
- throw new Error("Account is view-only");
834
- },
835
- signTransaction: async () => {
836
- throw new Error("Account is view-only");
837
- },
838
- signTypedData: async () => {
839
- throw new Error("Account is view-only");
840
- }
841
- });
842
- }
843
- function getSessionSignerAccount(signerAddress) {
844
- if (!signerAddress || signerAddress === zeroAddress) {
845
- throw new Error("Signer address is required");
846
- }
847
- return toAccount({
848
- address: signerAddress,
849
- signMessage: async () => {
850
- throw new Error("Session signer is view-only");
851
- },
852
- signTransaction: async () => {
853
- throw new Error("Session signer is view-only");
854
- },
855
- signTypedData: async () => {
856
- throw new Error("Session signer is view-only");
857
- }
858
- });
859
- }
860
- function buildSession(chain, signerAddress) {
861
- const sessionSignerAccount = getSessionSignerAccount(signerAddress);
862
- return {
863
- owners: {
864
- type: "ecdsa",
865
- accounts: [sessionSignerAccount]
866
- },
867
- chain
868
- };
869
- }
870
- async function createSmartAccount(userSigner, sessionSigner, sdkApiKey) {
871
- const rhinestone = new RhinestoneSDK({
872
- apiKey: sdkApiKey ?? ""
873
- });
874
- const ownerAccounts = sessionSigner ? [userSigner, sessionSigner] : [userSigner];
875
- const config = {
876
- account: {
877
- type: "nexus"
878
- },
879
- owners: {
880
- type: "ecdsa",
881
- accounts: ownerAccounts,
882
- ...sessionSigner ? { threshold: 1 } : {}
883
- },
884
- experimental_sessions: {
885
- enabled: true
886
- }
887
- };
888
- const account = await rhinestone.createAccount(config);
889
- return account;
890
- }
891
- function getAccountAddress(account) {
892
- return account.getAddress();
893
- }
894
- function getAccountInitData(account) {
895
- const { factory, factoryData } = account.getInitData();
896
- if (!factory) {
897
- throw new Error("Account init data is not available");
898
- }
899
- return {
900
- factory,
901
- factoryData
902
- };
903
- }
904
- async function signEnableSessionWithOwner(rhinestoneAccount, sessionDetails, signer) {
905
- const originalOwners = rhinestoneAccount.config.owners;
906
- rhinestoneAccount.config.owners = {
907
- type: "ecdsa",
908
- accounts: [signer],
909
- threshold: 1,
910
- ...originalOwners?.type === "ecdsa" && originalOwners.module ? { module: originalOwners.module } : {}
911
- };
912
- try {
913
- return await rhinestoneAccount.experimental_signEnableSession(
914
- sessionDetails
915
- );
916
- } finally {
917
- rhinestoneAccount.config.owners = originalOwners;
918
- }
919
- }
920
- async function getSessionDetails(rhinestoneAccount, targetChain, signerAddress, sessionSigner, targetToken, sessionChainIds) {
921
- const isTargetTestnet = Boolean(targetChain.testnet);
922
- const chainsByNetworkType = SUPPORTED_CHAINS.filter(
923
- (chain) => Boolean(chain.testnet) === isTargetTestnet
924
- );
925
- const chainsById = new Map(
926
- chainsByNetworkType.map((chain) => [chain.id, chain])
927
- );
928
- let selectedChains = [...chainsByNetworkType];
929
- if (sessionChainIds && sessionChainIds.length > 0) {
930
- const selectedByCaller = [];
931
- for (const chainId of sessionChainIds) {
932
- const chain = chainsById.get(chainId);
933
- if (chain) {
934
- selectedByCaller.push(chain);
935
- }
936
- }
937
- if (selectedByCaller.length > 0) {
938
- selectedChains = selectedByCaller;
939
- }
940
- }
941
- if (targetToken) {
942
- const targetSymbol = getTokenSymbol(
943
- targetToken,
944
- targetChain.id
945
- ).toUpperCase();
946
- if (targetSymbol && targetSymbol !== "TOKEN") {
947
- const chainsForToken = selectedChains.filter(
948
- (chain) => getSupportedTokenSymbolsForChain(chain.id).includes(targetSymbol)
949
- );
950
- if (chainsForToken.length > 0) {
951
- selectedChains = chainsForToken;
952
- }
953
- }
954
- }
955
- if (!selectedChains.some((c) => c.id === targetChain.id)) {
956
- selectedChains.push(targetChain);
957
- }
958
- const uniqueChains = Array.from(
959
- new Map(selectedChains.map((chain) => [chain.id, chain])).values()
960
- );
961
- const sessions = uniqueChains.map(
962
- (chain) => buildSession(chain, signerAddress)
963
- );
964
- const sessionDetails = await rhinestoneAccount.experimental_getSessionDetails(sessions);
965
- const enableSignature = sessionSigner ? await signEnableSessionWithOwner(
966
- rhinestoneAccount,
967
- sessionDetails,
968
- sessionSigner
969
- ) : await rhinestoneAccount.experimental_signEnableSession(sessionDetails);
970
- if (!sessionDetails.hashesAndChainIds?.length) {
971
- throw new Error("Session details missing chain digests");
972
- }
973
- return {
974
- hashesAndChainIds: sessionDetails.hashesAndChainIds,
975
- signature: enableSignature
976
- };
977
- }
978
- function deserializeSessionData(raw) {
979
- const data = structuredClone(raw);
980
- const message = data.message;
981
- if (!message?.sessionsAndChainIds) return data;
982
- for (const entry of message.sessionsAndChainIds) {
983
- const chainSession = entry;
984
- chainSession.chainId = BigInt(chainSession.chainId);
985
- const session = chainSession.session;
986
- if (session) {
987
- session.nonce = BigInt(session.nonce);
988
- session.expires = BigInt(session.expires);
989
- }
990
- }
991
- return data;
992
- }
993
- async function signSessionDetails(rhinestoneAccount, sessionDetailsUnsigned, signer) {
994
- const data = deserializeSessionData(sessionDetailsUnsigned.data);
995
- const hashesAndChainIds = sessionDetailsUnsigned.hashesAndChainIds.map(
996
- (h) => ({
997
- chainId: BigInt(h.chainId),
998
- sessionDigest: h.sessionDigest
999
- })
1000
- );
1001
- const sessionDetails = {
1002
- nonces: [],
1003
- hashesAndChainIds,
1004
- data
1005
- };
1006
- const signature = await signEnableSessionWithOwner(
1007
- rhinestoneAccount,
1008
- sessionDetails,
1009
- signer
1010
- );
1011
- return {
1012
- hashesAndChainIds,
1013
- signature
1014
- };
1015
- }
1016
-
1017
893
  // src/core/session-owner.ts
1018
894
  import { isAddress } from "viem";
1019
895
  import {
@@ -1709,21 +1585,16 @@ export {
1709
1585
  Spinner,
1710
1586
  Button,
1711
1587
  ConnectStep,
1712
- createViewOnlyAccount,
1713
- createSmartAccount,
1714
- getAccountAddress,
1715
- getAccountInitData,
1716
- getSessionDetails,
1717
- signSessionDetails,
1588
+ buildSessionDetails,
1589
+ createDepositService,
1590
+ getAssetId,
1591
+ portfolioToAssets,
1592
+ isNativeAsset,
1718
1593
  loadSessionOwnerFromStorage,
1719
1594
  saveSessionOwnerToStorage,
1720
1595
  createSessionOwnerKey,
1721
1596
  accountFromPrivateKey,
1722
1597
  PoweredBy,
1723
- createDepositService,
1724
- getAssetId,
1725
- portfolioToAssets,
1726
- isNativeAsset,
1727
1598
  currencyFormatter,
1728
1599
  tokenFormatter,
1729
1600
  formatUserError,
package/dist/deposit.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk7QCFFKB5cjs = require('./chunk-7QCFFKB5.cjs');
4
- require('./chunk-4Q6QCALP.cjs');
3
+ var _chunk7MQU2SR7cjs = require('./chunk-7MQU2SR7.cjs');
4
+ require('./chunk-QWYZJL3L.cjs');
5
5
  require('./chunk-CEIWN53N.cjs');
6
6
 
7
7
 
8
- exports.DepositModal = _chunk7QCFFKB5cjs.DepositModal;
8
+ exports.DepositModal = _chunk7MQU2SR7cjs.DepositModal;
package/dist/deposit.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  DepositModal
3
- } from "./chunk-W42B54IA.mjs";
4
- import "./chunk-3FK5FAUL.mjs";
3
+ } from "./chunk-AJALMXW4.mjs";
4
+ import "./chunk-YOFGP4FV.mjs";
5
5
  import "./chunk-A6QLADED.mjs";
6
6
  export {
7
7
  DepositModal
package/dist/index.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk7QCFFKB5cjs = require('./chunk-7QCFFKB5.cjs');
3
+ var _chunk7MQU2SR7cjs = require('./chunk-7MQU2SR7.cjs');
4
4
 
5
5
 
6
- var _chunk4WULBRUAcjs = require('./chunk-4WULBRUA.cjs');
7
- require('./chunk-4Q6QCALP.cjs');
6
+ var _chunkXIS33BZ6cjs = require('./chunk-XIS33BZ6.cjs');
7
+ require('./chunk-QWYZJL3L.cjs');
8
8
 
9
9
 
10
10
 
@@ -64,4 +64,4 @@ var _chunkCEIWN53Ncjs = require('./chunk-CEIWN53N.cjs');
64
64
 
65
65
 
66
66
 
67
- exports.CHAIN_BY_ID = _chunkCEIWN53Ncjs.CHAIN_BY_ID; exports.DEFAULT_BACKEND_URL = _chunkCEIWN53Ncjs.DEFAULT_BACKEND_URL; exports.DEFAULT_SIGNER_ADDRESS = _chunkCEIWN53Ncjs.DEFAULT_SIGNER_ADDRESS; exports.DepositModal = _chunk7QCFFKB5cjs.DepositModal; exports.NATIVE_TOKEN_ADDRESS = _chunkCEIWN53Ncjs.NATIVE_TOKEN_ADDRESS; exports.SOURCE_CHAINS = _chunkCEIWN53Ncjs.SOURCE_CHAINS; exports.SUPPORTED_CHAINS = _chunkCEIWN53Ncjs.SUPPORTED_CHAINS; exports.WithdrawModal = _chunk4WULBRUAcjs.WithdrawModal; exports.chainRegistry = _chunkCEIWN53Ncjs.chainRegistry; exports.findChainIdForToken = _chunkCEIWN53Ncjs.findChainIdForToken; exports.getChainBadge = _chunkCEIWN53Ncjs.getChainBadge; exports.getChainIcon = _chunkCEIWN53Ncjs.getChainIcon; exports.getChainId = _chunkCEIWN53Ncjs.getChainId; exports.getChainName = _chunkCEIWN53Ncjs.getChainName; exports.getChainObject = _chunkCEIWN53Ncjs.getChainObject; exports.getExplorerName = _chunkCEIWN53Ncjs.getExplorerName; exports.getExplorerTxUrl = _chunkCEIWN53Ncjs.getExplorerTxUrl; exports.getExplorerUrl = _chunkCEIWN53Ncjs.getExplorerUrl; exports.getSupportedChainIds = _chunkCEIWN53Ncjs.getSupportedChainIds; exports.getSupportedTargetTokens = _chunkCEIWN53Ncjs.getSupportedTargetTokens; exports.getSupportedTokenSymbolsForChain = _chunkCEIWN53Ncjs.getSupportedTokenSymbolsForChain; exports.getTokenAddress = _chunkCEIWN53Ncjs.getTokenAddress; exports.getTokenDecimals = _chunkCEIWN53Ncjs.getTokenDecimals; exports.getTokenDecimalsByAddress = _chunkCEIWN53Ncjs.getTokenDecimalsByAddress; exports.getTokenIcon = _chunkCEIWN53Ncjs.getTokenIcon; exports.getTokenSymbol = _chunkCEIWN53Ncjs.getTokenSymbol; exports.getUsdcAddress = _chunkCEIWN53Ncjs.getUsdcAddress; exports.getUsdcDecimals = _chunkCEIWN53Ncjs.getUsdcDecimals; exports.isSupportedTokenAddressForChain = _chunkCEIWN53Ncjs.isSupportedTokenAddressForChain;
67
+ exports.CHAIN_BY_ID = _chunkCEIWN53Ncjs.CHAIN_BY_ID; exports.DEFAULT_BACKEND_URL = _chunkCEIWN53Ncjs.DEFAULT_BACKEND_URL; exports.DEFAULT_SIGNER_ADDRESS = _chunkCEIWN53Ncjs.DEFAULT_SIGNER_ADDRESS; exports.DepositModal = _chunk7MQU2SR7cjs.DepositModal; exports.NATIVE_TOKEN_ADDRESS = _chunkCEIWN53Ncjs.NATIVE_TOKEN_ADDRESS; exports.SOURCE_CHAINS = _chunkCEIWN53Ncjs.SOURCE_CHAINS; exports.SUPPORTED_CHAINS = _chunkCEIWN53Ncjs.SUPPORTED_CHAINS; exports.WithdrawModal = _chunkXIS33BZ6cjs.WithdrawModal; exports.chainRegistry = _chunkCEIWN53Ncjs.chainRegistry; exports.findChainIdForToken = _chunkCEIWN53Ncjs.findChainIdForToken; exports.getChainBadge = _chunkCEIWN53Ncjs.getChainBadge; exports.getChainIcon = _chunkCEIWN53Ncjs.getChainIcon; exports.getChainId = _chunkCEIWN53Ncjs.getChainId; exports.getChainName = _chunkCEIWN53Ncjs.getChainName; exports.getChainObject = _chunkCEIWN53Ncjs.getChainObject; exports.getExplorerName = _chunkCEIWN53Ncjs.getExplorerName; exports.getExplorerTxUrl = _chunkCEIWN53Ncjs.getExplorerTxUrl; exports.getExplorerUrl = _chunkCEIWN53Ncjs.getExplorerUrl; exports.getSupportedChainIds = _chunkCEIWN53Ncjs.getSupportedChainIds; exports.getSupportedTargetTokens = _chunkCEIWN53Ncjs.getSupportedTargetTokens; exports.getSupportedTokenSymbolsForChain = _chunkCEIWN53Ncjs.getSupportedTokenSymbolsForChain; exports.getTokenAddress = _chunkCEIWN53Ncjs.getTokenAddress; exports.getTokenDecimals = _chunkCEIWN53Ncjs.getTokenDecimals; exports.getTokenDecimalsByAddress = _chunkCEIWN53Ncjs.getTokenDecimalsByAddress; exports.getTokenIcon = _chunkCEIWN53Ncjs.getTokenIcon; exports.getTokenSymbol = _chunkCEIWN53Ncjs.getTokenSymbol; exports.getUsdcAddress = _chunkCEIWN53Ncjs.getUsdcAddress; exports.getUsdcDecimals = _chunkCEIWN53Ncjs.getUsdcDecimals; exports.isSupportedTokenAddressForChain = _chunkCEIWN53Ncjs.isSupportedTokenAddressForChain;
package/dist/index.mjs CHANGED
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  DepositModal
3
- } from "./chunk-W42B54IA.mjs";
3
+ } from "./chunk-AJALMXW4.mjs";
4
4
  import {
5
5
  WithdrawModal
6
- } from "./chunk-DJAUNNEW.mjs";
7
- import "./chunk-3FK5FAUL.mjs";
6
+ } from "./chunk-QCRZCGAE.mjs";
7
+ import "./chunk-YOFGP4FV.mjs";
8
8
  import {
9
9
  CHAIN_BY_ID,
10
10
  DEFAULT_BACKEND_URL,
package/dist/reown.cjs CHANGED
@@ -1,12 +1,12 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk7QCFFKB5cjs = require('./chunk-7QCFFKB5.cjs');
3
+ var _chunk7MQU2SR7cjs = require('./chunk-7MQU2SR7.cjs');
4
4
 
5
5
 
6
- var _chunk4WULBRUAcjs = require('./chunk-4WULBRUA.cjs');
7
- require('./chunk-4Q6QCALP.cjs');
6
+ var _chunkXIS33BZ6cjs = require('./chunk-XIS33BZ6.cjs');
7
+ require('./chunk-QWYZJL3L.cjs');
8
8
  require('./chunk-CEIWN53N.cjs');
9
9
 
10
10
 
11
11
 
12
- exports.DepositModal = _chunk7QCFFKB5cjs.DepositModal; exports.WithdrawModal = _chunk4WULBRUAcjs.WithdrawModal;
12
+ exports.DepositModal = _chunk7MQU2SR7cjs.DepositModal; exports.WithdrawModal = _chunkXIS33BZ6cjs.WithdrawModal;
package/dist/reown.mjs CHANGED
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  DepositModal
3
- } from "./chunk-W42B54IA.mjs";
3
+ } from "./chunk-AJALMXW4.mjs";
4
4
  import {
5
5
  WithdrawModal
6
- } from "./chunk-DJAUNNEW.mjs";
7
- import "./chunk-3FK5FAUL.mjs";
6
+ } from "./chunk-QCRZCGAE.mjs";
7
+ import "./chunk-YOFGP4FV.mjs";
8
8
  import "./chunk-A6QLADED.mjs";
9
9
  export {
10
10
  DepositModal,
package/dist/withdraw.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk4WULBRUAcjs = require('./chunk-4WULBRUA.cjs');
4
- require('./chunk-4Q6QCALP.cjs');
3
+ var _chunkXIS33BZ6cjs = require('./chunk-XIS33BZ6.cjs');
4
+ require('./chunk-QWYZJL3L.cjs');
5
5
  require('./chunk-CEIWN53N.cjs');
6
6
 
7
7
 
8
- exports.WithdrawModal = _chunk4WULBRUAcjs.WithdrawModal;
8
+ exports.WithdrawModal = _chunkXIS33BZ6cjs.WithdrawModal;
package/dist/withdraw.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  WithdrawModal
3
- } from "./chunk-DJAUNNEW.mjs";
4
- import "./chunk-3FK5FAUL.mjs";
3
+ } from "./chunk-QCRZCGAE.mjs";
4
+ import "./chunk-YOFGP4FV.mjs";
5
5
  import "./chunk-A6QLADED.mjs";
6
6
  export {
7
7
  WithdrawModal
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rhinestone/deposit-modal",
3
- "version": "0.1.26",
3
+ "version": "0.1.27",
4
4
  "description": "React modal component for Rhinestone cross-chain deposits",
5
5
  "author": "Rhinestone <dev@rhinestone.wtf>",
6
6
  "bugs": {
@@ -65,7 +65,6 @@
65
65
  "viem": ">=2"
66
66
  },
67
67
  "dependencies": {
68
- "@rhinestone/sdk": "^1.2.14",
69
68
  "@rhinestone/shared-configs": "^1.4.93",
70
69
  "@reown/appkit": "^1.8.17",
71
70
  "@reown/appkit-adapter-wagmi": "^1.8.17",