@sodax/wallet-sdk-react 0.0.1-rc.8 → 1.0.0-beta
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 +20 -20
- package/dist/index.cjs +20 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.mjs +22 -13
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
- package/src/SodaxWalletProvider.tsx +1 -1
- package/src/core/XService.ts +1 -1
- package/src/hooks/useXBalances.ts +1 -1
- package/src/xchains/evm/EvmXService.ts +3 -15
- package/src/xchains/sui/SuiXService.ts +20 -10
package/README.md
CHANGED
|
@@ -144,44 +144,44 @@ This example demonstrates:
|
|
|
144
144
|
|
|
145
145
|
### Components
|
|
146
146
|
|
|
147
|
-
- [`SodaxWalletProvider`](
|
|
147
|
+
- [`SodaxWalletProvider`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/SodaxWalletProvider.tsx) - Main provider component for wallet connectivity
|
|
148
148
|
|
|
149
149
|
### Hooks
|
|
150
150
|
|
|
151
151
|
#### Core Wallet Hooks
|
|
152
|
-
- [`useXConnectors`](
|
|
153
|
-
- [`useXConnect`](
|
|
154
|
-
- [`useXAccount`](
|
|
155
|
-
- [`useXDisconnect`](
|
|
152
|
+
- [`useXConnectors`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/hooks/useXConnectors.ts) - Get available wallet connectors
|
|
153
|
+
- [`useXConnect`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/hooks/useXConnect.ts) - Connect to a wallet
|
|
154
|
+
- [`useXAccount`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/hooks/useXAccount.ts) - Get account information
|
|
155
|
+
- [`useXDisconnect`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/hooks/useXDisconnect.ts) - Disconnect from a wallet
|
|
156
156
|
|
|
157
157
|
#### Chain-Specific Hooks
|
|
158
|
-
- [`useEvmSwitchChain`](
|
|
158
|
+
- [`useEvmSwitchChain`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/hooks/evm/useEvmSwitchChain.ts) - Switch between EVM chains
|
|
159
159
|
|
|
160
160
|
#### Balance Hooks
|
|
161
|
-
- [`useXBalances`](
|
|
161
|
+
- [`useXBalances`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/hooks/useXBalances.ts) - Fetch token balances
|
|
162
162
|
|
|
163
163
|
#### Service Hooks
|
|
164
|
-
- [`useXService`](
|
|
164
|
+
- [`useXService`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/hooks/useXService.ts) - Access chain-specific service
|
|
165
165
|
|
|
166
166
|
### Types
|
|
167
167
|
|
|
168
168
|
#### Core Types
|
|
169
|
-
- [`XAccount`](
|
|
170
|
-
- [`XConnection`](
|
|
171
|
-
- [`XConnector`](
|
|
172
|
-
- [`XToken`](
|
|
169
|
+
- [`XAccount`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/types/index.ts) - Wallet account type
|
|
170
|
+
- [`XConnection`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/types/index.ts) - Wallet connection type
|
|
171
|
+
- [`XConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/types/index.ts) - Wallet connector type
|
|
172
|
+
- [`XToken`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/types/index.ts) - Cross-chain token type
|
|
173
173
|
|
|
174
174
|
### Classes
|
|
175
175
|
|
|
176
176
|
#### XConnector
|
|
177
|
-
- [`XConnector`](
|
|
178
|
-
- [`EvmXConnector`](
|
|
179
|
-
- [`SolanaXConnector`](
|
|
180
|
-
- [`SuiXConnector`](
|
|
181
|
-
- [`StellarXConnector`](
|
|
182
|
-
- [`InjectiveMetamaskXConnector`](
|
|
183
|
-
- [`InjectiveKelprXConnector`](
|
|
184
|
-
- [`IconXConnector`](
|
|
177
|
+
- [`XConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/core/XConnector.ts) - Base class for wallet connectors
|
|
178
|
+
- [`EvmXConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/xchains/evm/EvmXConnector.ts) - EVM wallet connector
|
|
179
|
+
- [`SolanaXConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/xchains/solana/SolanaXConnector.ts) - Solana wallet connector
|
|
180
|
+
- [`SuiXConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/xchains/sui/SuiXConnector.ts) - Sui wallet connector
|
|
181
|
+
- [`StellarXConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/xchains/stellar/StellarWalletsKitXConnector.ts) - Stellar wallet connector
|
|
182
|
+
- [`InjectiveMetamaskXConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/xchains/injective/InjectiveMetamaskXConnector.ts) - Injective MetaMask connector
|
|
183
|
+
- [`InjectiveKelprXConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/xchains/injective/InjectiveKelprXConnector.ts) - Injective Keplr connector
|
|
184
|
+
- [`IconXConnector`](https://github.com/icon-project/sodax-frontend/tree/main/packages/wallet-sdk-react/src/xchains/icon/IconHanaXConnector.ts) - ICON wallet connector
|
|
185
185
|
|
|
186
186
|
## Contributing
|
|
187
187
|
|
package/dist/index.cjs
CHANGED
|
@@ -197,7 +197,8 @@ var hyper = /* @__PURE__ */ viem.defineChain({
|
|
|
197
197
|
});
|
|
198
198
|
var createWagmiConfig = (config) => {
|
|
199
199
|
return wagmi.createConfig({
|
|
200
|
-
chains: [chains.mainnet, chains.avalanche, chains.arbitrum, chains.base, chains.bsc, chains.sonic, chains.optimism, chains.polygon,
|
|
200
|
+
chains: [chains.mainnet, chains.avalanche, chains.arbitrum, chains.base, chains.bsc, chains.sonic, chains.optimism, chains.polygon, hyper, chains.lightlinkPhoenix],
|
|
201
|
+
ssr: true,
|
|
201
202
|
transports: {
|
|
202
203
|
[chains.mainnet.id]: wagmi.http(config[types.ETHEREUM_MAINNET_CHAIN_ID]),
|
|
203
204
|
[chains.avalanche.id]: wagmi.http(config[types.AVALANCHE_MAINNET_CHAIN_ID]),
|
|
@@ -207,7 +208,6 @@ var createWagmiConfig = (config) => {
|
|
|
207
208
|
[chains.sonic.id]: wagmi.http(config[types.SONIC_MAINNET_CHAIN_ID]),
|
|
208
209
|
[chains.optimism.id]: wagmi.http(config[types.OPTIMISM_MAINNET_CHAIN_ID]),
|
|
209
210
|
[chains.polygon.id]: wagmi.http(config[types.POLYGON_MAINNET_CHAIN_ID]),
|
|
210
|
-
[chains.nibiru.id]: wagmi.http(config[types.NIBIRU_MAINNET_CHAIN_ID]),
|
|
211
211
|
[hyper.id]: wagmi.http(config[types.HYPEREVM_MAINNET_CHAIN_ID]),
|
|
212
212
|
[chains.lightlinkPhoenix.id]: wagmi.http(config[types.LIGHTLINK_MAINNET_CHAIN_ID])
|
|
213
213
|
}
|
|
@@ -736,18 +736,27 @@ var SuiXService = class _SuiXService extends XService {
|
|
|
736
736
|
async getBalances(address, xTokens) {
|
|
737
737
|
if (!address) return {};
|
|
738
738
|
try {
|
|
739
|
-
const
|
|
740
|
-
owner: address
|
|
741
|
-
});
|
|
742
|
-
const tokenMap = xTokens.reduce((map, xToken) => {
|
|
739
|
+
const balancePromises = xTokens.map(async (xToken) => {
|
|
743
740
|
let coinType = isNativeToken(xToken) ? "0x2::sui::SUI" : xToken.address;
|
|
744
741
|
if (coinType === "0x03917a812fe4a6d6bc779c5ab53f8a80ba741f8af04121193fc44e0f662e2ceb::balanced_dollar::BALANCED_DOLLAR") {
|
|
745
742
|
coinType = "0x3917a812fe4a6d6bc779c5ab53f8a80ba741f8af04121193fc44e0f662e2ceb::balanced_dollar::BALANCED_DOLLAR";
|
|
746
743
|
}
|
|
747
|
-
const balance =
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
744
|
+
const balance = await this.suiClient.getBalance({
|
|
745
|
+
owner: address,
|
|
746
|
+
coinType
|
|
747
|
+
});
|
|
748
|
+
return {
|
|
749
|
+
address: xToken.address,
|
|
750
|
+
balance: balance ? BigInt(balance.totalBalance) : void 0
|
|
751
|
+
};
|
|
752
|
+
});
|
|
753
|
+
const results = await Promise.all(balancePromises);
|
|
754
|
+
const tokenMap = {};
|
|
755
|
+
results.forEach((result) => {
|
|
756
|
+
if (result.balance !== void 0) {
|
|
757
|
+
tokenMap[result.address] = result.balance;
|
|
758
|
+
}
|
|
759
|
+
});
|
|
751
760
|
return tokenMap;
|
|
752
761
|
} catch (e) {
|
|
753
762
|
console.log("error", e);
|
|
@@ -1388,7 +1397,7 @@ var SodaxWalletProvider = ({ children, rpcConfig }) => {
|
|
|
1388
1397
|
return createWagmiConfig(rpcConfig);
|
|
1389
1398
|
}, [rpcConfig]);
|
|
1390
1399
|
const wallets = React2.useMemo(() => [new walletAdapterWallets.UnsafeBurnerWalletAdapter()], []);
|
|
1391
|
-
return /* @__PURE__ */ React2__default.default.createElement(wagmi.WagmiProvider, { config: wagmiConfig
|
|
1400
|
+
return /* @__PURE__ */ React2__default.default.createElement(wagmi.WagmiProvider, { config: wagmiConfig }, /* @__PURE__ */ React2__default.default.createElement(dappKit.SuiClientProvider, { networks: { mainnet: { url: client.getFullnodeUrl("mainnet") } }, defaultNetwork: "mainnet" }, /* @__PURE__ */ React2__default.default.createElement(dappKit.WalletProvider, { autoConnect: true }, /* @__PURE__ */ React2__default.default.createElement(walletAdapterReact.ConnectionProvider, { endpoint: rpcConfig["solana"] ?? "" }, /* @__PURE__ */ React2__default.default.createElement(walletAdapterReact.WalletProvider, { wallets, autoConnect: true }, /* @__PURE__ */ React2__default.default.createElement(Hydrate, null), children)))));
|
|
1392
1401
|
};
|
|
1393
1402
|
reconnectIcon();
|
|
1394
1403
|
reconnectStellar();
|