@0xsquid/react-hooks 6.4.7-beta.2 → 6.4.7-keplr-btc-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/dist/core/connectors/bitcoin/errors/index.d.ts +1 -2
  2. package/dist/core/connectors/bitcoin/errors/index.js +1 -1
  3. package/dist/core/connectors/bitcoin/errors/index.js.map +1 -1
  4. package/dist/core/connectors/bitcoin/wallets/index.d.ts +1 -0
  5. package/dist/core/connectors/bitcoin/wallets/index.js +1 -0
  6. package/dist/core/connectors/bitcoin/wallets/index.js.map +1 -1
  7. package/dist/core/connectors/bitcoin/wallets/keplr.d.ts +11 -0
  8. package/dist/core/connectors/bitcoin/wallets/keplr.js +28 -0
  9. package/dist/core/connectors/bitcoin/wallets/keplr.js.map +1 -0
  10. package/dist/core/constants.d.ts +4 -7
  11. package/dist/core/constants.js +4 -21
  12. package/dist/core/constants.js.map +1 -1
  13. package/dist/core/externalLinks.d.ts +1 -1
  14. package/dist/core/externalLinks.js +1 -1
  15. package/dist/core/index.d.ts +1 -1
  16. package/dist/core/index.js +1 -1
  17. package/dist/core/index.js.map +1 -1
  18. package/dist/core/providers/CosmosProvider.d.ts +1 -1
  19. package/dist/core/providers/CosmosProvider.js.map +1 -1
  20. package/dist/core/queries/queries-keys.d.ts +4 -4
  21. package/dist/core/types/error.d.ts +1 -0
  22. package/dist/core/types/error.js.map +1 -1
  23. package/dist/core/types/transaction.d.ts +1 -0
  24. package/dist/core/types/wallet.d.ts +2 -19
  25. package/dist/core/types/wallet.js.map +1 -1
  26. package/dist/core/wallets.d.ts +0 -1
  27. package/dist/core/wallets.js +9 -1
  28. package/dist/core/wallets.js.map +1 -1
  29. package/dist/hooks/chains/useSquidChains.d.ts +0 -1
  30. package/dist/hooks/chains/useSquidChains.js +4 -23
  31. package/dist/hooks/chains/useSquidChains.js.map +1 -1
  32. package/dist/hooks/cosmos/useCosmos.js +20 -15
  33. package/dist/hooks/cosmos/useCosmos.js.map +1 -1
  34. package/dist/hooks/index.d.ts +0 -1
  35. package/dist/hooks/index.js +0 -1
  36. package/dist/hooks/index.js.map +1 -1
  37. package/dist/hooks/solana/useSolana.js +2 -8
  38. package/dist/hooks/solana/useSolana.js.map +1 -1
  39. package/dist/hooks/store/useWalletStore.d.ts +5 -5
  40. package/dist/hooks/store/useWalletStore.js +20 -13
  41. package/dist/hooks/store/useWalletStore.js.map +1 -1
  42. package/dist/hooks/swap/useSwap.js +3 -3
  43. package/dist/hooks/swap/useSwap.js.map +1 -1
  44. package/dist/hooks/tokens/useAllConnectedWalletBalances.js +1 -12
  45. package/dist/hooks/tokens/useAllConnectedWalletBalances.js.map +1 -1
  46. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.d.ts +5 -4
  47. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js +17 -30
  48. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js.map +1 -1
  49. package/dist/hooks/tokens/useBalance.d.ts +246 -18
  50. package/dist/hooks/tokens/useBalance.js +25 -66
  51. package/dist/hooks/tokens/useBalance.js.map +1 -1
  52. package/dist/hooks/tokens/useMultiChainBalance.d.ts +2 -2
  53. package/dist/hooks/tokens/useMultiChainBalance.js +35 -38
  54. package/dist/hooks/tokens/useMultiChainBalance.js.map +1 -1
  55. package/dist/hooks/tokens/useNativeBalance.d.ts +18 -16
  56. package/dist/hooks/tokens/useNativeBalance.js +56 -121
  57. package/dist/hooks/tokens/useNativeBalance.js.map +1 -1
  58. package/dist/hooks/tokens/useNativeTokenForChain.js +4 -6
  59. package/dist/hooks/tokens/useNativeTokenForChain.js.map +1 -1
  60. package/dist/hooks/tokens/useSquidTokens.d.ts +11 -2
  61. package/dist/hooks/tokens/useSquidTokens.js +16 -8
  62. package/dist/hooks/tokens/useSquidTokens.js.map +1 -1
  63. package/dist/hooks/transaction/useEstimate.js +1 -1
  64. package/dist/hooks/transaction/useEstimate.js.map +1 -1
  65. package/dist/hooks/transaction/useExecuteTransaction.d.ts +2 -0
  66. package/dist/hooks/transaction/useExecuteTransaction.js +39 -81
  67. package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
  68. package/dist/hooks/transaction/useGetRoute.d.ts +2 -1
  69. package/dist/hooks/transaction/useGetRoute.js +2 -2
  70. package/dist/hooks/transaction/useGetRoute.js.map +1 -1
  71. package/dist/hooks/transaction/useSingleTransaction.js +1 -1
  72. package/dist/hooks/transaction/useSingleTransaction.js.map +1 -1
  73. package/dist/hooks/user/useUserParams.js +1 -1
  74. package/dist/hooks/user/useUserParams.js.map +1 -1
  75. package/dist/hooks/wallet/useIntegratorContext.js +1 -1
  76. package/dist/hooks/wallet/useIntegratorContext.js.map +1 -1
  77. package/dist/hooks/wallet/useMultiChainWallet.d.ts +3 -1
  78. package/dist/hooks/wallet/useMultiChainWallet.js +25 -32
  79. package/dist/hooks/wallet/useMultiChainWallet.js.map +1 -1
  80. package/dist/hooks/wallet/useSigner.d.ts +2 -2
  81. package/dist/hooks/wallet/useSigner.js +7 -33
  82. package/dist/hooks/wallet/useSigner.js.map +1 -1
  83. package/dist/hooks/wallet/useWallet.d.ts +7 -53
  84. package/dist/hooks/wallet/useWallet.js +11 -25
  85. package/dist/hooks/wallet/useWallet.js.map +1 -1
  86. package/dist/hooks/wallet/useWallets.d.ts +1 -29
  87. package/dist/hooks/wallet/useWallets.js +1 -5
  88. package/dist/hooks/wallet/useWallets.js.map +1 -1
  89. package/dist/provider/index.d.ts +1 -1
  90. package/dist/provider/index.js +8 -10
  91. package/dist/provider/index.js.map +1 -1
  92. package/dist/services/external/rpcService.d.ts +4 -8
  93. package/dist/services/external/rpcService.js +14 -38
  94. package/dist/services/external/rpcService.js.map +1 -1
  95. package/dist/services/internal/assetsService.d.ts +2 -2
  96. package/dist/services/internal/assetsService.js +4 -8
  97. package/dist/services/internal/assetsService.js.map +1 -1
  98. package/dist/services/internal/bitcoinService.d.ts +5 -3
  99. package/dist/services/internal/bitcoinService.js +9 -1
  100. package/dist/services/internal/bitcoinService.js.map +1 -1
  101. package/dist/services/internal/configService.js +2 -7
  102. package/dist/services/internal/configService.js.map +1 -1
  103. package/dist/services/internal/cosmosService.d.ts +14 -4
  104. package/dist/services/internal/cosmosService.js +1 -1
  105. package/dist/services/internal/cosmosService.js.map +1 -1
  106. package/dist/services/internal/errorService.d.ts +0 -15
  107. package/dist/services/internal/errorService.js +4 -34
  108. package/dist/services/internal/errorService.js.map +1 -1
  109. package/dist/services/internal/evmService.d.ts +6 -3
  110. package/dist/services/internal/evmService.js.map +1 -1
  111. package/dist/services/internal/solanaService.d.ts +6 -3
  112. package/dist/services/internal/solanaService.js.map +1 -1
  113. package/dist/services/internal/transactionService.d.ts +1 -0
  114. package/dist/services/internal/walletService.d.ts +14 -20
  115. package/dist/services/internal/walletService.js +25 -32
  116. package/dist/services/internal/walletService.js.map +1 -1
  117. package/dist/tests/swapConfig.test.js +7 -72
  118. package/dist/tests/swapConfig.test.js.map +1 -1
  119. package/package.json +8 -12
  120. package/dist/core/providers/SuiProvider.d.ts +0 -19
  121. package/dist/core/providers/SuiProvider.js +0 -15
  122. package/dist/core/providers/SuiProvider.js.map +0 -1
  123. package/dist/core/types/rpc.d.ts +0 -10
  124. package/dist/core/types/rpc.js +0 -2
  125. package/dist/core/types/rpc.js.map +0 -1
  126. package/dist/core/types/sui.d.ts +0 -14
  127. package/dist/core/types/sui.js +0 -2
  128. package/dist/core/types/sui.js.map +0 -1
  129. package/dist/hooks/sui/useSui.d.ts +0 -2
  130. package/dist/hooks/sui/useSui.js +0 -28
  131. package/dist/hooks/sui/useSui.js.map +0 -1
  132. package/dist/hooks/sui/useSuiClient.d.ts +0 -9
  133. package/dist/hooks/sui/useSuiClient.js +0 -16
  134. package/dist/hooks/sui/useSuiClient.js.map +0 -1
  135. package/dist/hooks/sui/useSuiWallets.d.ts +0 -7
  136. package/dist/hooks/sui/useSuiWallets.js +0 -36
  137. package/dist/hooks/sui/useSuiWallets.js.map +0 -1
  138. package/dist/services/external/suiRpcClient.d.ts +0 -32
  139. package/dist/services/external/suiRpcClient.js +0 -80
  140. package/dist/services/external/suiRpcClient.js.map +0 -1
  141. package/dist/services/internal/suiService.d.ts +0 -9
  142. package/dist/services/internal/suiService.js +0 -88
  143. package/dist/services/internal/suiService.js.map +0 -1
@@ -1,9 +0,0 @@
1
- import { ChainData } from "@0xsquid/squid-types";
2
- import { SuiClient } from "@mysten/sui/client";
3
- interface Params {
4
- chain: ChainData | undefined;
5
- }
6
- export declare function useSuiClient({ chain }: Params): {
7
- client: SuiClient | null;
8
- };
9
- export {};
@@ -1,16 +0,0 @@
1
- import { ChainType } from "@0xsquid/squid-types";
2
- import { SuiClient } from "@mysten/sui/client";
3
- import { useMemo } from "react";
4
- export function useSuiClient({ chain }) {
5
- const client = useMemo(() => {
6
- if (!chain?.rpc || chain.chainType !== ChainType.SUI) {
7
- return null;
8
- }
9
- const suiClient = new SuiClient({
10
- url: chain.rpc,
11
- });
12
- return suiClient;
13
- }, [chain?.chainType, chain?.rpc]);
14
- return { client };
15
- }
16
- //# sourceMappingURL=useSuiClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSuiClient.js","sourceRoot":"","sources":["../../../src/hooks/sui/useSuiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAMhC,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAAU;IAG5C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1B,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,GAAG,EAAE;YACpD,OAAO,IAAI,CAAC;SACb;QAED,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC;YAC9B,GAAG,EAAE,KAAK,CAAC,GAAG;SACf,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IAEnC,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC"}
@@ -1,7 +0,0 @@
1
- import { SuiWallet } from "../../core/types/wallet";
2
- /**
3
- * Returns the list of registered Sui wallets
4
- */
5
- export declare function useSuiWallets(): {
6
- wallets: SuiWallet[];
7
- };
@@ -1,36 +0,0 @@
1
- import { getWallets as getWalletsApi, } from "@mysten/wallet-standard";
2
- import { StashedWallet } from "@mysten/zksend";
3
- import { useCallback, useEffect, useRef, useState } from "react";
4
- import { filterSuiWallets } from "../../services/internal/suiService";
5
- /**
6
- * Returns the list of registered Sui wallets
7
- */
8
- export function useSuiWallets() {
9
- const isInitializedRef = useRef(false);
10
- const [wallets, setWallets] = useState([]);
11
- const setRegisteredWallets = useCallback((standardWallets) => {
12
- setWallets(filterSuiWallets(standardWallets));
13
- }, []);
14
- useEffect(() => {
15
- const walletsApi = getWalletsApi();
16
- const removeOnRegisterListener = walletsApi.on("register", (wallet) => {
17
- setRegisteredWallets([wallet]);
18
- });
19
- if (!isInitializedRef.current) {
20
- const stashedWallet = new StashedWallet({
21
- name: "Squid",
22
- network: "mainnet",
23
- });
24
- walletsApi.register(stashedWallet);
25
- setRegisteredWallets(walletsApi.get());
26
- isInitializedRef.current = true;
27
- }
28
- return () => {
29
- removeOnRegisterListener();
30
- };
31
- }, [setRegisteredWallets]);
32
- return {
33
- wallets,
34
- };
35
- }
36
- //# sourceMappingURL=useSuiWallets.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSuiWallets.js","sourceRoot":"","sources":["../../../src/hooks/sui/useSuiWallets.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,IAAI,aAAa,GAE5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE;;GAEG;AACH,MAAM,UAAU,aAAa;IAG3B,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAc,EAAE,CAAC,CAAC;IAExD,MAAM,oBAAoB,GAAG,WAAW,CACtC,CAAC,eAA0C,EAAE,EAAE;QAC7C,UAAU,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC;IAChD,CAAC,EACD,EAAE,CACH,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QAEnC,MAAM,wBAAwB,GAAG,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACpE,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE;YAC7B,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC;gBACtC,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,SAAS;aACnB,CAAC,CAAC;YAEH,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACnC,oBAAoB,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;YACvC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;SACjC;QAED,OAAO,GAAG,EAAE;YACV,wBAAwB,EAAE,CAAC;QAC7B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAE3B,OAAO;QACL,OAAO;KACR,CAAC;AACJ,CAAC"}
@@ -1,32 +0,0 @@
1
- import { SuiCoinBalance } from "../../core/types/sui";
2
- export declare class SuiRpcClient {
3
- /**
4
- * Native Sui coin object type in long format.
5
- * This is the format used by the Squid UI and API
6
- */
7
- private suiNativeCoinObjectTypeLong;
8
- /**
9
- * Native Sui coin object type in short format.
10
- * This is the format used by RPC providers
11
- */
12
- private suiNativeCoinObjectTypeShort;
13
- private rpcUrl;
14
- constructor(rpcUrl: string);
15
- /**
16
- * Fetches the balance of a single Sui token for a given address.
17
- */
18
- getBalance(userAddress: string, tokenAddress: string): Promise<SuiCoinBalance>;
19
- /**
20
- * Fetches all Sui coin balances for a given address.
21
- */
22
- getAllBalances(userAddress: string): Promise<SuiCoinBalance[]>;
23
- private call;
24
- /**
25
- * Parse native coin object type from the long format to the short format.
26
- */
27
- private toShortCoinObjectType;
28
- /**
29
- * Parse native coin object type from the short format to the long format.
30
- */
31
- private toLongCoinObjectType;
32
- }
@@ -1,80 +0,0 @@
1
- export class SuiRpcClient {
2
- /**
3
- * Native Sui coin object type in long format.
4
- * This is the format used by the Squid UI and API
5
- */
6
- suiNativeCoinObjectTypeLong = "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI";
7
- /**
8
- * Native Sui coin object type in short format.
9
- * This is the format used by RPC providers
10
- */
11
- suiNativeCoinObjectTypeShort = "0x2::sui::SUI";
12
- rpcUrl;
13
- constructor(rpcUrl) {
14
- this.rpcUrl = rpcUrl;
15
- }
16
- /**
17
- * Fetches the balance of a single Sui token for a given address.
18
- */
19
- async getBalance(userAddress, tokenAddress) {
20
- const response = await this.call("suix_getBalance", [
21
- userAddress,
22
- this.toShortCoinObjectType(tokenAddress),
23
- ]);
24
- return {
25
- ...response,
26
- coinType: this.toLongCoinObjectType(response.coinType),
27
- };
28
- }
29
- /**
30
- * Fetches all Sui coin balances for a given address.
31
- */
32
- async getAllBalances(userAddress) {
33
- const response = await this.call("suix_getAllBalances", [
34
- userAddress,
35
- ]);
36
- return response.map((balance) => ({
37
- ...balance,
38
- coinType: this.toLongCoinObjectType(balance.coinType),
39
- }));
40
- }
41
- async call(method, params) {
42
- const response = await fetch(this.rpcUrl, {
43
- method: "POST",
44
- headers: {
45
- "Content-Type": "application/json",
46
- },
47
- body: JSON.stringify({
48
- jsonrpc: "2.0",
49
- id: 1,
50
- method,
51
- params,
52
- }),
53
- });
54
- const data = await response.json();
55
- if (data.error) {
56
- throw new Error(`RPC Error (${method}): ${data.error.message}`);
57
- }
58
- if (!data.result) {
59
- throw new Error(`Invalid response from RPC (${method})`);
60
- }
61
- return data.result;
62
- }
63
- /**
64
- * Parse native coin object type from the long format to the short format.
65
- */
66
- toShortCoinObjectType(coinObjectType) {
67
- return coinObjectType === this.suiNativeCoinObjectTypeLong
68
- ? this.suiNativeCoinObjectTypeShort
69
- : coinObjectType;
70
- }
71
- /**
72
- * Parse native coin object type from the short format to the long format.
73
- */
74
- toLongCoinObjectType(coinObjectType) {
75
- return coinObjectType === this.suiNativeCoinObjectTypeShort
76
- ? this.suiNativeCoinObjectTypeLong
77
- : coinObjectType;
78
- }
79
- }
80
- //# sourceMappingURL=suiRpcClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"suiRpcClient.js","sourceRoot":"","sources":["../../../src/services/external/suiRpcClient.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,YAAY;IACvB;;;OAGG;IACK,2BAA2B,GACjC,8EAA8E,CAAC;IAEjF;;;OAGG;IACK,4BAA4B,GAAG,eAAe,CAAC;IAE/C,MAAM,CAAS;IAEvB,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACd,WAAmB,EACnB,YAAoB;QAEpB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAiB,iBAAiB,EAAE;YAClE,WAAW;YACX,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC;SACzC,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,QAAQ;YACX,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC;SACvD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAmB,qBAAqB,EAAE;YACxE,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAChC,GAAG,OAAO;YACV,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC;SACtD,CAAC,CAAC,CAAC;IACN,CAAC;IAEO,KAAK,CAAC,IAAI,CAAI,MAAc,EAAE,MAAa;QACjD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;YACxC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,OAAO,EAAE,KAAK;gBACd,EAAE,EAAE,CAAC;gBACL,MAAM;gBACN,MAAM;aACP,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,IAAI,GAAuB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEvD,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,cAAc,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;SACjE;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,GAAG,CAAC,CAAC;SAC1D;QAED,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,cAAsB;QAClD,OAAO,cAAc,KAAK,IAAI,CAAC,2BAA2B;YACxD,CAAC,CAAC,IAAI,CAAC,4BAA4B;YACnC,CAAC,CAAC,cAAc,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,cAAsB;QACjD,OAAO,cAAc,KAAK,IAAI,CAAC,4BAA4B;YACzD,CAAC,CAAC,IAAI,CAAC,2BAA2B;YAClC,CAAC,CAAC,cAAc,CAAC;IACrB,CAAC;CACF"}
@@ -1,9 +0,0 @@
1
- import { SuiChain, type Wallet as StandardWallet } from "@mysten/wallet-standard";
2
- import { SuiWallet } from "../../core/types/wallet";
3
- export declare function filterSuiWallets(standardWallets: readonly StandardWallet[]): SuiWallet[];
4
- export declare function isSuiAddressValid(address: string): boolean;
5
- /**
6
- * Override Sui standard wallet icons
7
- */
8
- export declare const suiWalletsIconOverrides: Record<string, string>;
9
- export declare function getSuiChain(chainId: string): SuiChain | null;
@@ -1,88 +0,0 @@
1
- import { ChainType } from "@0xsquid/squid-types";
2
- import { isSuiChain, SUI_MAINNET_CHAIN, SUI_TESTNET_CHAIN, } from "@mysten/wallet-standard";
3
- import { CHAIN_IDS } from "../../core/constants";
4
- import { walletIconBaseUrl } from "../../core/wallets";
5
- const STANDARD_FEATURES = [
6
- "standard:connect",
7
- "standard:events",
8
- ];
9
- const SUI_FEATURES = ["sui:signTransaction"];
10
- /**
11
- * Validates that a given standard wallet has all the required features for a Sui wallet
12
- */
13
- function isSuiStandardWallet(wallet) {
14
- return [...STANDARD_FEATURES, ...SUI_FEATURES].every((feature) => feature in wallet.features);
15
- }
16
- export function filterSuiWallets(standardWallets) {
17
- // Filter out all non-Sui standard wallets
18
- return standardWallets.filter(isSuiStandardWallet).map(formatSuiWallet);
19
- }
20
- function isHex(value) {
21
- return /^(0x|0X)?[a-fA-F0-9]+$/.test(value) && value.length % 2 === 0;
22
- }
23
- function getHexByteLength(value) {
24
- return /^(0x|0X)/.test(value) ? (value.length - 2) / 2 : value.length / 2;
25
- }
26
- const SUI_ADDRESS_LENGTH = 32;
27
- // Ref. https://github.com/MystenLabs/ts-sdks/blob/31dd6c73d7aab9819bd545323273f733cfcc5a01/packages/typescript/src/utils/sui-types.ts#L24-L27
28
- export function isSuiAddressValid(address) {
29
- return isHex(address) && getHexByteLength(address) === SUI_ADDRESS_LENGTH;
30
- }
31
- /**
32
- * Override Sui standard wallet icons
33
- */
34
- export const suiWalletsIconOverrides = {
35
- "Surf Wallet": `${walletIconBaseUrl}/surf.webp`,
36
- "Sui Wallet": `${walletIconBaseUrl}/sui.webp`,
37
- "OKX Wallet": `${walletIconBaseUrl}/okx.webp`,
38
- Backpack: `${walletIconBaseUrl}/backpack.webp`,
39
- Stashed: `${walletIconBaseUrl}/stashed.webp`,
40
- Phantom: `${walletIconBaseUrl}/phantom.webp`,
41
- };
42
- /**
43
- * Format a Sui standard wallet into a Squid Wallet
44
- */
45
- function formatSuiWallet(wallet) {
46
- const { icon, name, features, id, chains } = wallet;
47
- const connectorId = (id || name);
48
- const walletIcon = suiWalletsIconOverrides[connectorId] || icon;
49
- return {
50
- connectorId,
51
- name,
52
- connectorName: name,
53
- type: ChainType.SUI,
54
- icon: walletIcon,
55
- windowFlag: name,
56
- isMobile: false,
57
- isInstalled: () => true,
58
- connector: {
59
- signTransaction: features["sui:signTransaction"].signTransaction,
60
- connect: async () => {
61
- const { accounts } = await features["standard:connect"].connect();
62
- if (!isSuiChain(chains[0]))
63
- throw new Error("Error connecting Sui wallet, invalid chain");
64
- if (!accounts.length) {
65
- throw new Error("No accounts returned from wallet");
66
- }
67
- return {
68
- account: accounts[0],
69
- chain: chains[0],
70
- };
71
- },
72
- disconnect: async () => {
73
- await features["standard:disconnect"]?.disconnect();
74
- },
75
- },
76
- };
77
- }
78
- export function getSuiChain(chainId) {
79
- switch (chainId) {
80
- case CHAIN_IDS.SUI:
81
- return SUI_MAINNET_CHAIN;
82
- case CHAIN_IDS.SUI_TESTNET:
83
- return SUI_TESTNET_CHAIN;
84
- default:
85
- return null;
86
- }
87
- }
88
- //# sourceMappingURL=suiService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"suiService.js","sourceRoot":"","sources":["../../../src/services/internal/suiService.ts"],"names":[],"mappings":"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"}