@b3dotfun/sdk 0.0.75-alpha.0 → 0.0.76-alpha.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.
@@ -30,7 +30,7 @@ export { useQueryBSMNT } from "./useQueryBSMNT";
30
30
  export { useRemoveSessionKey } from "./useRemoveSessionKey";
31
31
  export { useRouter } from "./useRouter";
32
32
  export { useSearchParamsSSR } from "./useSearchParamsSSR";
33
- export { useSimBalance } from "./useSimBalance";
33
+ export { useSimBalance, useSimSvmBalance } from "./useSimBalance";
34
34
  export { useSiwe } from "./useSiwe";
35
35
  export { useTokenBalance } from "./useTokenBalance";
36
36
  export { useTokenBalanceDirect } from "./useTokenBalanceDirect";
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.useURLParams = exports.useUnifiedChainSwitchAndExecute = exports.useTokensFromAddress = exports.useTokenPriceWithFallback = exports.useTokenPrice = exports.useTokenFromUrl = exports.useTokenData = exports.useTokenBalancesByChain = exports.useTokenBalanceDirect = exports.useTokenBalance = exports.useSiwe = exports.useSimBalance = exports.useSearchParamsSSR = exports.useRouter = exports.useRemoveSessionKey = exports.useQueryBSMNT = exports.useQueryB3 = exports.useProfileSettings = exports.useProfilePreference = exports.useProfile = exports.useDisplayName = exports.useOneBalance = exports.useNotifications = exports.useNativeBalanceFromRPC = exports.useNativeBalance = exports.useMediaQuery = exports.useIsomorphicLayoutEffect = exports.useIsMobile = exports.useHasMounted = exports.useHandleConnectWithPrivy = exports.useGlobalAccount = exports.useGetGeo = exports.useGetAllTWSigners = exports.useFirstEOA = exports.useExchangeRate = exports.useConnect = exports.useClient = exports.useChainSwitchWithAction = exports.useBestTransactionPath = exports.useB3EnsName = exports.useB3BalanceFromAddresses = exports.useAuthentication = exports.useAnalytics = exports.useAddTWSessionKey = exports.useAccountWallet = exports.useAccountAssets = exports.createWagmiConfig = void 0;
17
+ exports.useURLParams = exports.useUnifiedChainSwitchAndExecute = exports.useTokensFromAddress = exports.useTokenPriceWithFallback = exports.useTokenPrice = exports.useTokenFromUrl = exports.useTokenData = exports.useTokenBalancesByChain = exports.useTokenBalanceDirect = exports.useTokenBalance = exports.useSiwe = exports.useSimSvmBalance = exports.useSimBalance = exports.useSearchParamsSSR = exports.useRouter = exports.useRemoveSessionKey = exports.useQueryBSMNT = exports.useQueryB3 = exports.useProfileSettings = exports.useProfilePreference = exports.useProfile = exports.useDisplayName = exports.useOneBalance = exports.useNotifications = exports.useNativeBalanceFromRPC = exports.useNativeBalance = exports.useMediaQuery = exports.useIsomorphicLayoutEffect = exports.useIsMobile = exports.useHasMounted = exports.useHandleConnectWithPrivy = exports.useGlobalAccount = exports.useGetGeo = exports.useGetAllTWSigners = exports.useFirstEOA = exports.useExchangeRate = exports.useConnect = exports.useClient = exports.useChainSwitchWithAction = exports.useBestTransactionPath = exports.useB3EnsName = exports.useB3BalanceFromAddresses = exports.useAuthentication = exports.useAnalytics = exports.useAddTWSessionKey = exports.useAccountWallet = exports.useAccountAssets = exports.createWagmiConfig = void 0;
18
18
  var createWagmiConfig_1 = require("../utils/createWagmiConfig");
19
19
  Object.defineProperty(exports, "createWagmiConfig", { enumerable: true, get: function () { return createWagmiConfig_1.createWagmiConfig; } });
20
20
  var useAccountAssets_1 = require("./useAccountAssets");
@@ -84,6 +84,7 @@ var useSearchParamsSSR_1 = require("./useSearchParamsSSR");
84
84
  Object.defineProperty(exports, "useSearchParamsSSR", { enumerable: true, get: function () { return useSearchParamsSSR_1.useSearchParamsSSR; } });
85
85
  var useSimBalance_1 = require("./useSimBalance");
86
86
  Object.defineProperty(exports, "useSimBalance", { enumerable: true, get: function () { return useSimBalance_1.useSimBalance; } });
87
+ Object.defineProperty(exports, "useSimSvmBalance", { enumerable: true, get: function () { return useSimBalance_1.useSimSvmBalance; } });
87
88
  var useSiwe_1 = require("./useSiwe");
88
89
  Object.defineProperty(exports, "useSiwe", { enumerable: true, get: function () { return useSiwe_1.useSiwe; } });
89
90
  var useTokenBalance_1 = require("./useTokenBalance");
@@ -21,4 +21,32 @@ export interface SimBalanceResponse {
21
21
  wallet_address: string;
22
22
  balances: SimBalanceItem[];
23
23
  }
24
+ export interface SvmBalanceItem {
25
+ chain: string;
26
+ address: string;
27
+ amount: string;
28
+ balance: string;
29
+ raw_balance: string;
30
+ value_usd?: number;
31
+ program_id: string | null;
32
+ decimals: number;
33
+ total_supply: string;
34
+ metadata_address?: string;
35
+ name?: string;
36
+ symbol: string;
37
+ uri?: string | null;
38
+ price_usd?: number;
39
+ liquidity_usd?: number;
40
+ pool_type?: string | null;
41
+ pool_address?: string | null;
42
+ mint_authority?: string | null;
43
+ }
44
+ export interface SvmBalanceResponse {
45
+ processing_time_ms?: number;
46
+ wallet_address: string;
47
+ next_offset?: string;
48
+ balances_count?: number;
49
+ balances: SvmBalanceItem[];
50
+ }
24
51
  export declare function useSimBalance(address?: string, chainIdsParam?: number[]): import("@tanstack/react-query").UseQueryResult<SimBalanceResponse, Error>;
52
+ export declare function useSimSvmBalance(address?: string, chains?: ("solana" | "eclipse")[], limit?: number): import("@tanstack/react-query").UseQueryResult<SvmBalanceResponse, Error>;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useSimBalance = useSimBalance;
4
+ exports.useSimSvmBalance = useSimSvmBalance;
4
5
  const react_query_1 = require("@tanstack/react-query");
5
6
  async function fetchSimBalance(address, chainIdsParam) {
6
7
  if (!address)
@@ -17,6 +18,30 @@ async function fetchSimBalance(address, chainIdsParam) {
17
18
  const balanceData = await response.json();
18
19
  return balanceData;
19
20
  }
21
+ async function fetchSimSvmBalance(address, chains, limit) {
22
+ if (!address)
23
+ throw new Error("Address is required");
24
+ const queryParams = new URLSearchParams();
25
+ if (chains && chains.length > 0) {
26
+ queryParams.append("chains", chains.join(","));
27
+ }
28
+ if (limit) {
29
+ queryParams.append("limit", limit.toString());
30
+ }
31
+ let url = `https://simdune-api.sean-430.workers.dev/?url=https://api.sim.dune.com/beta/svm/balances/${address}`;
32
+ if (queryParams.toString()) {
33
+ url += `?${queryParams.toString()}`;
34
+ }
35
+ if (process.env.NEXT_PUBLIC_LOCAL_SIMDUNE_KEY) {
36
+ url += `${queryParams.toString() ? "&" : "?"}localkey=${process.env.NEXT_PUBLIC_LOCAL_SIMDUNE_KEY}`;
37
+ }
38
+ const response = await fetch(url);
39
+ if (!response.ok) {
40
+ throw new Error(`Failed to fetch SVM balance: ${response.statusText}`);
41
+ }
42
+ const balanceData = await response.json();
43
+ return balanceData;
44
+ }
20
45
  function useSimBalance(address, chainIdsParam) {
21
46
  return (0, react_query_1.useQuery)({
22
47
  queryKey: ["simBalance", address, chainIdsParam],
@@ -28,3 +53,14 @@ function useSimBalance(address, chainIdsParam) {
28
53
  enabled: Boolean(address),
29
54
  });
30
55
  }
56
+ function useSimSvmBalance(address, chains, limit) {
57
+ return (0, react_query_1.useQuery)({
58
+ queryKey: ["svmBalance", address, chains, limit],
59
+ queryFn: () => {
60
+ if (!address)
61
+ throw new Error("Address is required");
62
+ return fetchSimSvmBalance(address, chains, limit);
63
+ },
64
+ enabled: Boolean(address),
65
+ });
66
+ }
@@ -30,7 +30,7 @@ export { useQueryBSMNT } from "./useQueryBSMNT";
30
30
  export { useRemoveSessionKey } from "./useRemoveSessionKey";
31
31
  export { useRouter } from "./useRouter";
32
32
  export { useSearchParamsSSR } from "./useSearchParamsSSR";
33
- export { useSimBalance } from "./useSimBalance";
33
+ export { useSimBalance, useSimSvmBalance } from "./useSimBalance";
34
34
  export { useSiwe } from "./useSiwe";
35
35
  export { useTokenBalance } from "./useTokenBalance";
36
36
  export { useTokenBalanceDirect } from "./useTokenBalanceDirect";
@@ -30,7 +30,7 @@ export { useQueryBSMNT } from "./useQueryBSMNT.js";
30
30
  export { useRemoveSessionKey } from "./useRemoveSessionKey.js";
31
31
  export { useRouter } from "./useRouter.js";
32
32
  export { useSearchParamsSSR } from "./useSearchParamsSSR.js";
33
- export { useSimBalance } from "./useSimBalance.js";
33
+ export { useSimBalance, useSimSvmBalance } from "./useSimBalance.js";
34
34
  export { useSiwe } from "./useSiwe.js";
35
35
  export { useTokenBalance } from "./useTokenBalance.js";
36
36
  export { useTokenBalanceDirect } from "./useTokenBalanceDirect.js";
@@ -21,4 +21,32 @@ export interface SimBalanceResponse {
21
21
  wallet_address: string;
22
22
  balances: SimBalanceItem[];
23
23
  }
24
+ export interface SvmBalanceItem {
25
+ chain: string;
26
+ address: string;
27
+ amount: string;
28
+ balance: string;
29
+ raw_balance: string;
30
+ value_usd?: number;
31
+ program_id: string | null;
32
+ decimals: number;
33
+ total_supply: string;
34
+ metadata_address?: string;
35
+ name?: string;
36
+ symbol: string;
37
+ uri?: string | null;
38
+ price_usd?: number;
39
+ liquidity_usd?: number;
40
+ pool_type?: string | null;
41
+ pool_address?: string | null;
42
+ mint_authority?: string | null;
43
+ }
44
+ export interface SvmBalanceResponse {
45
+ processing_time_ms?: number;
46
+ wallet_address: string;
47
+ next_offset?: string;
48
+ balances_count?: number;
49
+ balances: SvmBalanceItem[];
50
+ }
24
51
  export declare function useSimBalance(address?: string, chainIdsParam?: number[]): import("@tanstack/react-query").UseQueryResult<SimBalanceResponse, Error>;
52
+ export declare function useSimSvmBalance(address?: string, chains?: ("solana" | "eclipse")[], limit?: number): import("@tanstack/react-query").UseQueryResult<SvmBalanceResponse, Error>;
@@ -14,6 +14,30 @@ async function fetchSimBalance(address, chainIdsParam) {
14
14
  const balanceData = await response.json();
15
15
  return balanceData;
16
16
  }
17
+ async function fetchSimSvmBalance(address, chains, limit) {
18
+ if (!address)
19
+ throw new Error("Address is required");
20
+ const queryParams = new URLSearchParams();
21
+ if (chains && chains.length > 0) {
22
+ queryParams.append("chains", chains.join(","));
23
+ }
24
+ if (limit) {
25
+ queryParams.append("limit", limit.toString());
26
+ }
27
+ let url = `https://simdune-api.sean-430.workers.dev/?url=https://api.sim.dune.com/beta/svm/balances/${address}`;
28
+ if (queryParams.toString()) {
29
+ url += `?${queryParams.toString()}`;
30
+ }
31
+ if (process.env.NEXT_PUBLIC_LOCAL_SIMDUNE_KEY) {
32
+ url += `${queryParams.toString() ? "&" : "?"}localkey=${process.env.NEXT_PUBLIC_LOCAL_SIMDUNE_KEY}`;
33
+ }
34
+ const response = await fetch(url);
35
+ if (!response.ok) {
36
+ throw new Error(`Failed to fetch SVM balance: ${response.statusText}`);
37
+ }
38
+ const balanceData = await response.json();
39
+ return balanceData;
40
+ }
17
41
  export function useSimBalance(address, chainIdsParam) {
18
42
  return useQuery({
19
43
  queryKey: ["simBalance", address, chainIdsParam],
@@ -25,3 +49,14 @@ export function useSimBalance(address, chainIdsParam) {
25
49
  enabled: Boolean(address),
26
50
  });
27
51
  }
52
+ export function useSimSvmBalance(address, chains, limit) {
53
+ return useQuery({
54
+ queryKey: ["svmBalance", address, chains, limit],
55
+ queryFn: () => {
56
+ if (!address)
57
+ throw new Error("Address is required");
58
+ return fetchSimSvmBalance(address, chains, limit);
59
+ },
60
+ enabled: Boolean(address),
61
+ });
62
+ }
@@ -30,7 +30,7 @@ export { useQueryBSMNT } from "./useQueryBSMNT";
30
30
  export { useRemoveSessionKey } from "./useRemoveSessionKey";
31
31
  export { useRouter } from "./useRouter";
32
32
  export { useSearchParamsSSR } from "./useSearchParamsSSR";
33
- export { useSimBalance } from "./useSimBalance";
33
+ export { useSimBalance, useSimSvmBalance } from "./useSimBalance";
34
34
  export { useSiwe } from "./useSiwe";
35
35
  export { useTokenBalance } from "./useTokenBalance";
36
36
  export { useTokenBalanceDirect } from "./useTokenBalanceDirect";
@@ -21,4 +21,32 @@ export interface SimBalanceResponse {
21
21
  wallet_address: string;
22
22
  balances: SimBalanceItem[];
23
23
  }
24
+ export interface SvmBalanceItem {
25
+ chain: string;
26
+ address: string;
27
+ amount: string;
28
+ balance: string;
29
+ raw_balance: string;
30
+ value_usd?: number;
31
+ program_id: string | null;
32
+ decimals: number;
33
+ total_supply: string;
34
+ metadata_address?: string;
35
+ name?: string;
36
+ symbol: string;
37
+ uri?: string | null;
38
+ price_usd?: number;
39
+ liquidity_usd?: number;
40
+ pool_type?: string | null;
41
+ pool_address?: string | null;
42
+ mint_authority?: string | null;
43
+ }
44
+ export interface SvmBalanceResponse {
45
+ processing_time_ms?: number;
46
+ wallet_address: string;
47
+ next_offset?: string;
48
+ balances_count?: number;
49
+ balances: SvmBalanceItem[];
50
+ }
24
51
  export declare function useSimBalance(address?: string, chainIdsParam?: number[]): import("@tanstack/react-query").UseQueryResult<SimBalanceResponse, Error>;
52
+ export declare function useSimSvmBalance(address?: string, chains?: ("solana" | "eclipse")[], limit?: number): import("@tanstack/react-query").UseQueryResult<SvmBalanceResponse, Error>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@b3dotfun/sdk",
3
- "version": "0.0.75-alpha.0",
3
+ "version": "0.0.76-alpha.0",
4
4
  "source": "src/index.ts",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "react-native": "./dist/cjs/index.native.js",
@@ -39,7 +39,7 @@ export { useQueryBSMNT } from "./useQueryBSMNT";
39
39
  export { useRemoveSessionKey } from "./useRemoveSessionKey";
40
40
  export { useRouter } from "./useRouter";
41
41
  export { useSearchParamsSSR } from "./useSearchParamsSSR";
42
- export { useSimBalance } from "./useSimBalance";
42
+ export { useSimBalance, useSimSvmBalance } from "./useSimBalance";
43
43
  export { useSiwe } from "./useSiwe";
44
44
  export { useTokenBalance } from "./useTokenBalance";
45
45
  export { useTokenBalanceDirect } from "./useTokenBalanceDirect";
@@ -26,6 +26,36 @@ export interface SimBalanceResponse {
26
26
  balances: SimBalanceItem[];
27
27
  }
28
28
 
29
+ // SVM-specific types
30
+ export interface SvmBalanceItem {
31
+ chain: string;
32
+ address: string;
33
+ amount: string;
34
+ balance: string;
35
+ raw_balance: string;
36
+ value_usd?: number;
37
+ program_id: string | null;
38
+ decimals: number;
39
+ total_supply: string;
40
+ metadata_address?: string;
41
+ name?: string;
42
+ symbol: string;
43
+ uri?: string | null;
44
+ price_usd?: number;
45
+ liquidity_usd?: number;
46
+ pool_type?: string | null;
47
+ pool_address?: string | null;
48
+ mint_authority?: string | null;
49
+ }
50
+
51
+ export interface SvmBalanceResponse {
52
+ processing_time_ms?: number;
53
+ wallet_address: string;
54
+ next_offset?: string;
55
+ balances_count?: number;
56
+ balances: SvmBalanceItem[];
57
+ }
58
+
29
59
  async function fetchSimBalance(address: string, chainIdsParam: number[]): Promise<SimBalanceResponse> {
30
60
  if (!address) throw new Error("Address is required");
31
61
 
@@ -45,6 +75,35 @@ async function fetchSimBalance(address: string, chainIdsParam: number[]): Promis
45
75
  return balanceData;
46
76
  }
47
77
 
78
+ async function fetchSimSvmBalance(address: string, chains?: string[], limit?: number): Promise<SvmBalanceResponse> {
79
+ if (!address) throw new Error("Address is required");
80
+
81
+ const queryParams = new URLSearchParams();
82
+ if (chains && chains.length > 0) {
83
+ queryParams.append("chains", chains.join(","));
84
+ }
85
+ if (limit) {
86
+ queryParams.append("limit", limit.toString());
87
+ }
88
+
89
+ let url = `https://simdune-api.sean-430.workers.dev/?url=https://api.sim.dune.com/beta/svm/balances/${address}`;
90
+ if (queryParams.toString()) {
91
+ url += `?${queryParams.toString()}`;
92
+ }
93
+ if (process.env.NEXT_PUBLIC_LOCAL_SIMDUNE_KEY) {
94
+ url += `${queryParams.toString() ? "&" : "?"}localkey=${process.env.NEXT_PUBLIC_LOCAL_SIMDUNE_KEY}`;
95
+ }
96
+
97
+ const response = await fetch(url);
98
+
99
+ if (!response.ok) {
100
+ throw new Error(`Failed to fetch SVM balance: ${response.statusText}`);
101
+ }
102
+
103
+ const balanceData: SvmBalanceResponse = await response.json();
104
+ return balanceData;
105
+ }
106
+
48
107
  export function useSimBalance(address?: string, chainIdsParam?: number[]) {
49
108
  return useQuery({
50
109
  queryKey: ["simBalance", address, chainIdsParam],
@@ -55,3 +114,14 @@ export function useSimBalance(address?: string, chainIdsParam?: number[]) {
55
114
  enabled: Boolean(address),
56
115
  });
57
116
  }
117
+
118
+ export function useSimSvmBalance(address?: string, chains?: ("solana" | "eclipse")[], limit?: number) {
119
+ return useQuery({
120
+ queryKey: ["svmBalance", address, chains, limit],
121
+ queryFn: () => {
122
+ if (!address) throw new Error("Address is required");
123
+ return fetchSimSvmBalance(address, chains, limit);
124
+ },
125
+ enabled: Boolean(address),
126
+ });
127
+ }