@sodax/sdk 0.0.1-rc.1
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/LICENSE +21 -0
- package/README.md +224 -0
- package/dist/abis/asset-manager.abi.d.ts +418 -0
- package/dist/abis/asset-manager.abi.d.ts.map +1 -0
- package/dist/abis/asset-manager.abi.js +542 -0
- package/dist/abis/asset-manager.abi.js.map +1 -0
- package/dist/abis/connection.abi.d.ts +72 -0
- package/dist/abis/connection.abi.d.ts.map +1 -0
- package/dist/abis/connection.abi.js +92 -0
- package/dist/abis/connection.abi.js.map +1 -0
- package/dist/abis/erc20.abi.d.ts +236 -0
- package/dist/abis/erc20.abi.d.ts.map +1 -0
- package/dist/abis/erc20.abi.js +311 -0
- package/dist/abis/erc20.abi.js.map +1 -0
- package/dist/abis/index.d.ts +10 -0
- package/dist/abis/index.d.ts.map +1 -0
- package/dist/abis/index.js +10 -0
- package/dist/abis/index.js.map +1 -0
- package/dist/abis/intents.abi.d.ts +901 -0
- package/dist/abis/intents.abi.d.ts.map +1 -0
- package/dist/abis/intents.abi.js +1158 -0
- package/dist/abis/intents.abi.js.map +1 -0
- package/dist/abis/pool.abi.d.ts +626 -0
- package/dist/abis/pool.abi.d.ts.map +1 -0
- package/dist/abis/pool.abi.js +812 -0
- package/dist/abis/pool.abi.js.map +1 -0
- package/dist/abis/spokeAssetManager.abi.d.ts +169 -0
- package/dist/abis/spokeAssetManager.abi.d.ts.map +1 -0
- package/dist/abis/spokeAssetManager.abi.js +217 -0
- package/dist/abis/spokeAssetManager.abi.js.map +1 -0
- package/dist/abis/uiPoolData.abi.d.ts +369 -0
- package/dist/abis/uiPoolData.abi.d.ts.map +1 -0
- package/dist/abis/uiPoolData.abi.js +476 -0
- package/dist/abis/uiPoolData.abi.js.map +1 -0
- package/dist/abis/vaultToken.abi.d.ts +816 -0
- package/dist/abis/vaultToken.abi.d.ts.map +1 -0
- package/dist/abis/vaultToken.abi.js +1062 -0
- package/dist/abis/vaultToken.abi.js.map +1 -0
- package/dist/abis/walletFactory.abi.d.ts +20 -0
- package/dist/abis/walletFactory.abi.d.ts.map +1 -0
- package/dist/abis/walletFactory.abi.js +27 -0
- package/dist/abis/walletFactory.abi.js.map +1 -0
- package/dist/constants.d.ts +565 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +1196 -0
- package/dist/constants.js.map +1 -0
- package/dist/constants.test.d.ts +2 -0
- package/dist/constants.test.d.ts.map +1 -0
- package/dist/constants.test.js +128 -0
- package/dist/constants.test.js.map +1 -0
- package/dist/entities/Providers.d.ts +61 -0
- package/dist/entities/Providers.d.ts.map +1 -0
- package/dist/entities/Providers.js +51 -0
- package/dist/entities/Providers.js.map +1 -0
- package/dist/entities/Sodax.d.ts +23 -0
- package/dist/entities/Sodax.d.ts.map +1 -0
- package/dist/entities/Sodax.js +29 -0
- package/dist/entities/Sodax.js.map +1 -0
- package/dist/entities/Sodax.test.d.ts +2 -0
- package/dist/entities/Sodax.test.d.ts.map +1 -0
- package/dist/entities/Sodax.test.js +376 -0
- package/dist/entities/Sodax.test.js.map +1 -0
- package/dist/entities/cosmos/CW20Token.d.ts +39 -0
- package/dist/entities/cosmos/CW20Token.d.ts.map +1 -0
- package/dist/entities/cosmos/CW20Token.js +65 -0
- package/dist/entities/cosmos/CW20Token.js.map +1 -0
- package/dist/entities/cosmos/CWSpokeProvider.d.ts +91 -0
- package/dist/entities/cosmos/CWSpokeProvider.d.ts.map +1 -0
- package/dist/entities/cosmos/CWSpokeProvider.js +143 -0
- package/dist/entities/cosmos/CWSpokeProvider.js.map +1 -0
- package/dist/entities/cosmos/CosmosWalletProvider.d.ts +28 -0
- package/dist/entities/cosmos/CosmosWalletProvider.d.ts.map +1 -0
- package/dist/entities/cosmos/CosmosWalletProvider.js +102 -0
- package/dist/entities/cosmos/CosmosWalletProvider.js.map +1 -0
- package/dist/entities/cosmos/InjectiveWalletProvider.d.ts +25 -0
- package/dist/entities/cosmos/InjectiveWalletProvider.d.ts.map +1 -0
- package/dist/entities/cosmos/InjectiveWalletProvider.js +76 -0
- package/dist/entities/cosmos/InjectiveWalletProvider.js.map +1 -0
- package/dist/entities/icon/HanaWalletConnector.d.ts +36 -0
- package/dist/entities/icon/HanaWalletConnector.d.ts.map +1 -0
- package/dist/entities/icon/HanaWalletConnector.js +92 -0
- package/dist/entities/icon/HanaWalletConnector.js.map +1 -0
- package/dist/entities/icon/IconSpokeProvider.d.ts +8 -0
- package/dist/entities/icon/IconSpokeProvider.d.ts.map +1 -0
- package/dist/entities/icon/IconSpokeProvider.js +9 -0
- package/dist/entities/icon/IconSpokeProvider.js.map +1 -0
- package/dist/entities/icon/IconWalletProvider.d.ts +12 -0
- package/dist/entities/icon/IconWalletProvider.d.ts.map +1 -0
- package/dist/entities/icon/IconWalletProvider.js +34 -0
- package/dist/entities/icon/IconWalletProvider.js.map +1 -0
- package/dist/entities/icon/index.d.ts +5 -0
- package/dist/entities/icon/index.d.ts.map +1 -0
- package/dist/entities/icon/index.js +5 -0
- package/dist/entities/icon/index.js.map +1 -0
- package/dist/entities/icon/utils.d.ts +3 -0
- package/dist/entities/icon/utils.d.ts.map +1 -0
- package/dist/entities/icon/utils.js +4 -0
- package/dist/entities/icon/utils.js.map +1 -0
- package/dist/entities/index.d.ts +8 -0
- package/dist/entities/index.d.ts.map +1 -0
- package/dist/entities/index.js +8 -0
- package/dist/entities/index.js.map +1 -0
- package/dist/entities/solana/Configs.d.ts +10 -0
- package/dist/entities/solana/Configs.d.ts.map +1 -0
- package/dist/entities/solana/Configs.js +50 -0
- package/dist/entities/solana/Configs.js.map +1 -0
- package/dist/entities/solana/SolanaSpokeProvider.d.ts +9 -0
- package/dist/entities/solana/SolanaSpokeProvider.d.ts.map +1 -0
- package/dist/entities/solana/SolanaSpokeProvider.js +9 -0
- package/dist/entities/solana/SolanaSpokeProvider.js.map +1 -0
- package/dist/entities/solana/SolanaWalletProvider.d.ts +20 -0
- package/dist/entities/solana/SolanaWalletProvider.d.ts.map +1 -0
- package/dist/entities/solana/SolanaWalletProvider.js +53 -0
- package/dist/entities/solana/SolanaWalletProvider.js.map +1 -0
- package/dist/entities/solana/index.d.ts +4 -0
- package/dist/entities/solana/index.d.ts.map +1 -0
- package/dist/entities/solana/index.js +4 -0
- package/dist/entities/solana/index.js.map +1 -0
- package/dist/entities/solana/pda/pda.d.ts +45 -0
- package/dist/entities/solana/pda/pda.d.ts.map +1 -0
- package/dist/entities/solana/pda/pda.js +44 -0
- package/dist/entities/solana/pda/pda.js.map +1 -0
- package/dist/entities/solana/types/asset_manager.d.ts +919 -0
- package/dist/entities/solana/types/asset_manager.d.ts.map +1 -0
- package/dist/entities/solana/types/asset_manager.js +2 -0
- package/dist/entities/solana/types/asset_manager.js.map +1 -0
- package/dist/entities/solana/types/connection.d.ts +446 -0
- package/dist/entities/solana/types/connection.d.ts.map +1 -0
- package/dist/entities/solana/types/connection.js +2 -0
- package/dist/entities/solana/types/connection.js.map +1 -0
- package/dist/entities/solana/types/rate_limit_contract.d.ts +348 -0
- package/dist/entities/solana/types/rate_limit_contract.d.ts.map +1 -0
- package/dist/entities/solana/types/rate_limit_contract.js +2 -0
- package/dist/entities/solana/types/rate_limit_contract.js.map +1 -0
- package/dist/entities/solana/utils/utils.d.ts +6 -0
- package/dist/entities/solana/utils/utils.d.ts.map +1 -0
- package/dist/entities/solana/utils/utils.js +17 -0
- package/dist/entities/solana/utils/utils.js.map +1 -0
- package/dist/entities/stellar/StellarSpokeProvider.d.ts +24 -0
- package/dist/entities/stellar/StellarSpokeProvider.d.ts.map +1 -0
- package/dist/entities/stellar/StellarSpokeProvider.js +129 -0
- package/dist/entities/stellar/StellarSpokeProvider.js.map +1 -0
- package/dist/entities/sui/SuiSpokeProvider.d.ts +34 -0
- package/dist/entities/sui/SuiSpokeProvider.d.ts.map +1 -0
- package/dist/entities/sui/SuiSpokeProvider.js +143 -0
- package/dist/entities/sui/SuiSpokeProvider.js.map +1 -0
- package/dist/entities/sui/SuiWalletProvider.d.ts +15 -0
- package/dist/entities/sui/SuiWalletProvider.d.ts.map +1 -0
- package/dist/entities/sui/SuiWalletProvider.js +43 -0
- package/dist/entities/sui/SuiWalletProvider.js.map +1 -0
- package/dist/errors.d.ts +2 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +2 -0
- package/dist/errors.js.map +1 -0
- package/dist/guards.d.ts +25 -0
- package/dist/guards.d.ts.map +1 -0
- package/dist/guards.js +110 -0
- package/dist/guards.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces.d.ts +8 -0
- package/dist/interfaces.d.ts.map +1 -0
- package/dist/interfaces.js +2 -0
- package/dist/interfaces.js.map +1 -0
- package/dist/services/hub/EvmAssetManagerService.d.ts +60 -0
- package/dist/services/hub/EvmAssetManagerService.d.ts.map +1 -0
- package/dist/services/hub/EvmAssetManagerService.js +103 -0
- package/dist/services/hub/EvmAssetManagerService.js.map +1 -0
- package/dist/services/hub/EvmVaultTokenService.d.ts +81 -0
- package/dist/services/hub/EvmVaultTokenService.d.ts.map +1 -0
- package/dist/services/hub/EvmVaultTokenService.js +159 -0
- package/dist/services/hub/EvmVaultTokenService.js.map +1 -0
- package/dist/services/hub/EvmWalletAbstraction.d.ts +8 -0
- package/dist/services/hub/EvmWalletAbstraction.d.ts.map +1 -0
- package/dist/services/hub/EvmWalletAbstraction.js +14 -0
- package/dist/services/hub/EvmWalletAbstraction.js.map +1 -0
- package/dist/services/hub/index.d.ts +4 -0
- package/dist/services/hub/index.d.ts.map +1 -0
- package/dist/services/hub/index.js +4 -0
- package/dist/services/hub/index.js.map +1 -0
- package/dist/services/index.d.ts +7 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +7 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/intentRelay/IntentRelayApiService.d.ts +111 -0
- package/dist/services/intentRelay/IntentRelayApiService.d.ts.map +1 -0
- package/dist/services/intentRelay/IntentRelayApiService.js +160 -0
- package/dist/services/intentRelay/IntentRelayApiService.js.map +1 -0
- package/dist/services/intentRelay/IntentRelayApiService.test.d.ts +2 -0
- package/dist/services/intentRelay/IntentRelayApiService.test.d.ts.map +1 -0
- package/dist/services/intentRelay/IntentRelayApiService.test.js +134 -0
- package/dist/services/intentRelay/IntentRelayApiService.test.js.map +1 -0
- package/dist/services/intentRelay/index.d.ts +2 -0
- package/dist/services/intentRelay/index.d.ts.map +1 -0
- package/dist/services/intentRelay/index.js +2 -0
- package/dist/services/intentRelay/index.js.map +1 -0
- package/dist/services/moneyMarket/MoneyMarketService.d.ts +321 -0
- package/dist/services/moneyMarket/MoneyMarketService.d.ts.map +1 -0
- package/dist/services/moneyMarket/MoneyMarketService.js +604 -0
- package/dist/services/moneyMarket/MoneyMarketService.js.map +1 -0
- package/dist/services/moneyMarket/MoneyMarketService.test.d.ts +2 -0
- package/dist/services/moneyMarket/MoneyMarketService.test.d.ts.map +1 -0
- package/dist/services/moneyMarket/MoneyMarketService.test.js +245 -0
- package/dist/services/moneyMarket/MoneyMarketService.test.js.map +1 -0
- package/dist/services/moneyMarket/index.d.ts +2 -0
- package/dist/services/moneyMarket/index.d.ts.map +1 -0
- package/dist/services/moneyMarket/index.js +2 -0
- package/dist/services/moneyMarket/index.js.map +1 -0
- package/dist/services/shared/Erc20Service.d.ts +41 -0
- package/dist/services/shared/Erc20Service.d.ts.map +1 -0
- package/dist/services/shared/Erc20Service.js +107 -0
- package/dist/services/shared/Erc20Service.js.map +1 -0
- package/dist/services/shared/index.d.ts +2 -0
- package/dist/services/shared/index.d.ts.map +1 -0
- package/dist/services/shared/index.js +2 -0
- package/dist/services/shared/index.js.map +1 -0
- package/dist/services/solver/EvmSolverService.d.ts +125 -0
- package/dist/services/solver/EvmSolverService.d.ts.map +1 -0
- package/dist/services/solver/EvmSolverService.js +166 -0
- package/dist/services/solver/EvmSolverService.js.map +1 -0
- package/dist/services/solver/SolverApiService.d.ts +40 -0
- package/dist/services/solver/SolverApiService.d.ts.map +1 -0
- package/dist/services/solver/SolverApiService.js +157 -0
- package/dist/services/solver/SolverApiService.js.map +1 -0
- package/dist/services/solver/SolverApiService.test.d.ts +2 -0
- package/dist/services/solver/SolverApiService.test.d.ts.map +1 -0
- package/dist/services/solver/SolverApiService.test.js +180 -0
- package/dist/services/solver/SolverApiService.test.js.map +1 -0
- package/dist/services/solver/SolverService.d.ts +194 -0
- package/dist/services/solver/SolverService.d.ts.map +1 -0
- package/dist/services/solver/SolverService.js +324 -0
- package/dist/services/solver/SolverService.js.map +1 -0
- package/dist/services/solver/SolverService.test.d.ts +2 -0
- package/dist/services/solver/SolverService.test.d.ts.map +1 -0
- package/dist/services/solver/SolverService.test.js +493 -0
- package/dist/services/solver/SolverService.test.js.map +1 -0
- package/dist/services/solver/index.d.ts +3 -0
- package/dist/services/solver/index.d.ts.map +1 -0
- package/dist/services/solver/index.js +3 -0
- package/dist/services/solver/index.js.map +1 -0
- package/dist/services/spoke/CWSpokeService.d.ts +67 -0
- package/dist/services/spoke/CWSpokeService.d.ts.map +1 -0
- package/dist/services/spoke/CWSpokeService.js +75 -0
- package/dist/services/spoke/CWSpokeService.js.map +1 -0
- package/dist/services/spoke/EvmSpokeService.d.ts +61 -0
- package/dist/services/spoke/EvmSpokeService.d.ts.map +1 -0
- package/dist/services/spoke/EvmSpokeService.js +118 -0
- package/dist/services/spoke/EvmSpokeService.js.map +1 -0
- package/dist/services/spoke/IconSpokeService.d.ts +55 -0
- package/dist/services/spoke/IconSpokeService.d.ts.map +1 -0
- package/dist/services/spoke/IconSpokeService.js +111 -0
- package/dist/services/spoke/IconSpokeService.js.map +1 -0
- package/dist/services/spoke/SolanaSpokeService.d.ts +45 -0
- package/dist/services/spoke/SolanaSpokeService.d.ts.map +1 -0
- package/dist/services/spoke/SolanaSpokeService.js +170 -0
- package/dist/services/spoke/SolanaSpokeService.js.map +1 -0
- package/dist/services/spoke/SpokeService.d.ts +33 -0
- package/dist/services/spoke/SpokeService.d.ts.map +1 -0
- package/dist/services/spoke/SpokeService.js +102 -0
- package/dist/services/spoke/SpokeService.js.map +1 -0
- package/dist/services/spoke/StellarSpokeService.d.ts +35 -0
- package/dist/services/spoke/StellarSpokeService.d.ts.map +1 -0
- package/dist/services/spoke/StellarSpokeService.js +39 -0
- package/dist/services/spoke/StellarSpokeService.js.map +1 -0
- package/dist/services/spoke/SuiSpokeService.d.ts +69 -0
- package/dist/services/spoke/SuiSpokeService.d.ts.map +1 -0
- package/dist/services/spoke/SuiSpokeService.js +74 -0
- package/dist/services/spoke/SuiSpokeService.js.map +1 -0
- package/dist/services/spoke/index.d.ts +3 -0
- package/dist/services/spoke/index.d.ts.map +1 -0
- package/dist/services/spoke/index.js +3 -0
- package/dist/services/spoke/index.js.map +1 -0
- package/dist/tests/services/hub/EvmAssetManagerService.test.d.ts +2 -0
- package/dist/tests/services/hub/EvmAssetManagerService.test.d.ts.map +1 -0
- package/dist/tests/services/hub/EvmAssetManagerService.test.js +123 -0
- package/dist/tests/services/hub/EvmAssetManagerService.test.js.map +1 -0
- package/dist/tests/services/hub/EvmMoneyMarketService.test.d.ts +2 -0
- package/dist/tests/services/hub/EvmMoneyMarketService.test.d.ts.map +1 -0
- package/dist/tests/services/hub/EvmMoneyMarketService.test.js +121 -0
- package/dist/tests/services/hub/EvmMoneyMarketService.test.js.map +1 -0
- package/dist/tests/services/hub/EvmVaultTokenService.test.d.ts +2 -0
- package/dist/tests/services/hub/EvmVaultTokenService.test.d.ts.map +1 -0
- package/dist/tests/services/hub/EvmVaultTokenService.test.js +98 -0
- package/dist/tests/services/hub/EvmVaultTokenService.test.js.map +1 -0
- package/dist/tests/services/spoke/EvmSpokeService.test.d.ts +2 -0
- package/dist/tests/services/spoke/EvmSpokeService.test.d.ts.map +1 -0
- package/dist/tests/services/spoke/EvmSpokeService.test.js +197 -0
- package/dist/tests/services/spoke/EvmSpokeService.test.js.map +1 -0
- package/dist/types.d.ts +395 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +30 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/evm-utils.d.ts +10 -0
- package/dist/utils/evm-utils.d.ts.map +1 -0
- package/dist/utils/evm-utils.js +15 -0
- package/dist/utils/evm-utils.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/shared-utils.d.ts +19 -0
- package/dist/utils/shared-utils.d.ts.map +1 -0
- package/dist/utils/shared-utils.js +66 -0
- package/dist/utils/shared-utils.js.map +1 -0
- package/dist/utils/shared-utils.test.d.ts +2 -0
- package/dist/utils/shared-utils.test.d.ts.map +1 -0
- package/dist/utils/shared-utils.test.js +63 -0
- package/dist/utils/shared-utils.test.js.map +1 -0
- package/package.json +83 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { calculateFeeAmount, calculatePercentageFeeAmount } from './shared-utils.js';
|
|
3
|
+
describe('calculatePercentageAmount', () => {
|
|
4
|
+
const address = '0x0000000000000000000000000000000000000001';
|
|
5
|
+
it('should calculate percentage amount correctly', () => {
|
|
6
|
+
const testCases = [
|
|
7
|
+
{ amount: 1000n, percentage: 200, expected: 20n }, // 2% of 1000 = 20
|
|
8
|
+
{ amount: 5000n, percentage: 100, expected: 50n }, // 1% of 5000 = 50
|
|
9
|
+
{ amount: 10000n, percentage: 500, expected: 500n }, // 5% of 10000 = 500
|
|
10
|
+
{ amount: 1000000n, percentage: 50, expected: 5000n }, // 0.5% of 1000000 = 5000
|
|
11
|
+
{ amount: 1000000n, percentage: 10000, expected: 1000000n }, // 100% of 1000000 = 1000000
|
|
12
|
+
];
|
|
13
|
+
testCases.forEach(({ amount, percentage, expected }) => {
|
|
14
|
+
const result = calculatePercentageFeeAmount(amount, percentage);
|
|
15
|
+
expect(result).toBe(expected);
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
it('should calculate fee amount correctly for fixed amount fees', () => {
|
|
19
|
+
const testCases = [
|
|
20
|
+
{ inputAmount: 1000n, fee: { amount: 100n, address }, expected: 100n },
|
|
21
|
+
{ inputAmount: 5000n, fee: { amount: 500n, address }, expected: 500n },
|
|
22
|
+
{ inputAmount: 10000n, fee: { amount: 0n, address }, expected: 0n },
|
|
23
|
+
];
|
|
24
|
+
testCases.forEach(({ inputAmount, fee, expected }) => {
|
|
25
|
+
const result = calculateFeeAmount(inputAmount, fee);
|
|
26
|
+
expect(result).toBe(expected);
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
it('should calculate fee amount correctly for percentage fees', () => {
|
|
30
|
+
const testCases = [
|
|
31
|
+
{ inputAmount: 1000n, fee: { percentage: 200, address }, expected: 20n }, // 2%
|
|
32
|
+
{ inputAmount: 5000n, fee: { percentage: 100, address }, expected: 50n }, // 1%
|
|
33
|
+
{ inputAmount: 10000n, fee: { percentage: 500, address }, expected: 500n }, // 5%
|
|
34
|
+
{ inputAmount: 1000000n, fee: { percentage: 50, address }, expected: 5000n }, // 0.5%
|
|
35
|
+
{ inputAmount: 1000000n, fee: { percentage: 10000, address }, expected: 1000000n }, // 100%
|
|
36
|
+
];
|
|
37
|
+
testCases.forEach(({ inputAmount, fee, expected }) => {
|
|
38
|
+
const result = calculateFeeAmount(inputAmount, fee);
|
|
39
|
+
expect(result).toBe(expected);
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
it('should throw error when fixed fee amount is greater than input amount', () => {
|
|
43
|
+
const inputAmount = 1000n;
|
|
44
|
+
const fee = { amount: 2000n, address };
|
|
45
|
+
expect(() => calculateFeeAmount(inputAmount, fee)).toThrow('Fee amount must be greater than 0 and less than or equal to the input amount: 2000');
|
|
46
|
+
});
|
|
47
|
+
it('should throw error when fixed fee amount is negative', () => {
|
|
48
|
+
const inputAmount = 1000n;
|
|
49
|
+
const fee = { amount: -100n, address };
|
|
50
|
+
expect(() => calculateFeeAmount(inputAmount, fee)).toThrow('Fee amount must be greater than 0 and less than or equal to the input amount: -100');
|
|
51
|
+
});
|
|
52
|
+
it('should throw error when percentage fee is greater than 100%', () => {
|
|
53
|
+
const inputAmount = 1000n;
|
|
54
|
+
const fee = { percentage: 10001, address };
|
|
55
|
+
expect(() => calculateFeeAmount(inputAmount, fee)).toThrow('Fee percentage must be between 0 and 10000');
|
|
56
|
+
});
|
|
57
|
+
it('should throw error when percentage fee is negative', () => {
|
|
58
|
+
const inputAmount = 1000n;
|
|
59
|
+
const fee = { percentage: -100, address };
|
|
60
|
+
expect(() => calculateFeeAmount(inputAmount, fee)).toThrow('Fee percentage must be between 0 and 10000');
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
//# sourceMappingURL=shared-utils.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-utils.test.js","sourceRoot":"","sources":["../../src/utils/shared-utils.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAErF,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,MAAM,OAAO,GAAG,4CAA6D,CAAC;IAE9E,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,SAAS,GAAG;YAChB,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,kBAAkB;YACrE,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,kBAAkB;YACrE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,oBAAoB;YACzE,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,yBAAyB;YAChF,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,4BAA4B;SAC1F,CAAC;QAEF,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE;YACrD,MAAM,MAAM,GAAG,4BAA4B,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAChE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,SAAS,GAAG;YAChB,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YACtE,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YACtE,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;SACpE,CAAC;QAEF,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE;YACnD,MAAM,MAAM,GAAG,kBAAkB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,SAAS,GAAG;YAChB,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,KAAK;YAC/E,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,KAAK;YAC/E,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK;YACjF,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO;YACrF,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,OAAO;SAC5F,CAAC;QAEF,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE;YACnD,MAAM,MAAM,GAAG,kBAAkB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,WAAW,GAAG,KAAK,CAAC;QAC1B,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAEvC,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CACxD,oFAAoF,CACrF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,WAAW,GAAG,KAAK,CAAC;QAC1B,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;QAEvC,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CACxD,oFAAoF,CACrF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,WAAW,GAAG,KAAK,CAAC;QAC1B,MAAM,GAAG,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAE3C,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;IAC3G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,WAAW,GAAG,KAAK,CAAC;QAC1B,MAAM,GAAG,GAAG,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;QAE1C,MAAM,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;IAC3G,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@sodax/sdk",
|
|
3
|
+
"private": false,
|
|
4
|
+
"publishConfig": {
|
|
5
|
+
"access": "public"
|
|
6
|
+
},
|
|
7
|
+
"version": "0.0.1-rc.1",
|
|
8
|
+
"license": "MIT",
|
|
9
|
+
"description": "Sodax SDK",
|
|
10
|
+
"keywords": [
|
|
11
|
+
"sodax",
|
|
12
|
+
"sdk",
|
|
13
|
+
"frontend",
|
|
14
|
+
"interface"
|
|
15
|
+
],
|
|
16
|
+
"homepage": "https://github.com/icon-project/sodax-frontend/tree/main/packages/sdk",
|
|
17
|
+
"bugs": {
|
|
18
|
+
"url": "https://github.com/icon-project/sodax-frontend/issues"
|
|
19
|
+
},
|
|
20
|
+
"repository": {
|
|
21
|
+
"type": "git",
|
|
22
|
+
"url": "https://github.com/icon-project/sodax-frontend"
|
|
23
|
+
},
|
|
24
|
+
"main": "dist/index.js",
|
|
25
|
+
"files": [
|
|
26
|
+
"dist"
|
|
27
|
+
],
|
|
28
|
+
"type": "module",
|
|
29
|
+
"dependencies": {
|
|
30
|
+
"@coral-xyz/anchor": "0.30.1",
|
|
31
|
+
"@cosmjs/cosmwasm-stargate": "0.32.2",
|
|
32
|
+
"@cosmjs/encoding": "0.32.3",
|
|
33
|
+
"@cosmjs/proto-signing": "0.32.3",
|
|
34
|
+
"@cosmjs/stargate": "^0.32.2",
|
|
35
|
+
"@cosmjs/tendermint-rpc": "0.32.3",
|
|
36
|
+
"@injectivelabs/networks": "1.14.13",
|
|
37
|
+
"@injectivelabs/sdk-ts": "1.14.13",
|
|
38
|
+
"@injectivelabs/ts-types": "1.14.13",
|
|
39
|
+
"@injectivelabs/utils": "^1.14.13",
|
|
40
|
+
"@injectivelabs/wallet-ts": "1.14.13",
|
|
41
|
+
"@keplr-wallet/provider-extension": "^0.12.18",
|
|
42
|
+
"@keplr-wallet/types": "0.12.18",
|
|
43
|
+
"@solana/spl-token": "0.4.9",
|
|
44
|
+
"@solana/wallet-adapter-base": "^0.9.23",
|
|
45
|
+
"@solana/web3.js": "1.98.0",
|
|
46
|
+
"@stellar/freighter-api": "^4.1.0",
|
|
47
|
+
"@stellar/stellar-sdk": "12.3.0",
|
|
48
|
+
"@suiet/wallet-kit": "^0.3.4",
|
|
49
|
+
"bn.js": "^5.2.1",
|
|
50
|
+
"ethers": "^6.13.5",
|
|
51
|
+
"tiny-invariant": "1.3.3",
|
|
52
|
+
"cosmjs-types": "^0.9.0"
|
|
53
|
+
},
|
|
54
|
+
"devDependencies": {
|
|
55
|
+
"@arethetypeswrong/cli": "^0.17.4",
|
|
56
|
+
"@changesets/cli": "^2.27.9",
|
|
57
|
+
"@types/bn.js": "^5.1.6",
|
|
58
|
+
"@types/node": "^22.9.3",
|
|
59
|
+
"ts-node": "^10.9.2",
|
|
60
|
+
"typescript": "5.5.4",
|
|
61
|
+
"vitest": "^2.1.3"
|
|
62
|
+
},
|
|
63
|
+
"peerDependencies": {
|
|
64
|
+
"@mysten/sui": "^1.14.1",
|
|
65
|
+
"@mysten/wallet-standard": "^0.13.16",
|
|
66
|
+
"bignumber.js": "9.1.2",
|
|
67
|
+
"icon-sdk-js": "1.5.3",
|
|
68
|
+
"rlp": "3.0.0",
|
|
69
|
+
"viem": "^2.29.2"
|
|
70
|
+
},
|
|
71
|
+
"scripts": {
|
|
72
|
+
"build": "tsc",
|
|
73
|
+
"test": "vitest run",
|
|
74
|
+
"dev": "tsc --watch",
|
|
75
|
+
"ci": "pnpm run pretty && pnpm run build && pnpm run test",
|
|
76
|
+
"checkTs": "tsc --noEmit",
|
|
77
|
+
"pretty": "biome format . --write",
|
|
78
|
+
"lint": "biome lint . --write",
|
|
79
|
+
"check-exports": "attw $(pnpm pack) --ignore-rules=cjs-resolves-to-esm",
|
|
80
|
+
"local-release": "changeset version && changeset publish",
|
|
81
|
+
"clean": "rm -rf node_modules && rm -rf dist && rm -rf .turbo"
|
|
82
|
+
}
|
|
83
|
+
}
|