@soroswap/sdk 0.2.0 โ 0.3.2
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 +32 -23
- package/dist/clients/http-client.d.ts +2 -3
- package/dist/clients/http-client.d.ts.map +1 -1
- package/dist/clients/http-client.js +4 -17
- package/dist/clients/http-client.js.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -5
- package/dist/index.js.map +1 -1
- package/dist/soroswap-sdk.d.ts +4 -5
- package/dist/soroswap-sdk.d.ts.map +1 -1
- package/dist/soroswap-sdk.js +47 -17
- package/dist/soroswap-sdk.js.map +1 -1
- package/dist/types/common.d.ts +2 -2
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +0 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/pools.d.ts +2 -2
- package/dist/types/pools.d.ts.map +1 -1
- package/dist/types/quote.d.ts +2 -2
- package/dist/types/quote.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,13 +4,13 @@ Official TypeScript SDK for [Soroswap.Finance](https://soroswap.finance) - The f
|
|
|
4
4
|
|
|
5
5
|
## ๐ Features
|
|
6
6
|
|
|
7
|
-
- **๐
|
|
7
|
+
- **๐ Simple API Key Authentication**: Secure API key-based authentication
|
|
8
8
|
- **๐ฑ Trading Operations**: Get quotes, build transactions, send them to the network
|
|
9
9
|
- **๐ง Liquidity Management**: Add/remove liquidity and track positions
|
|
10
10
|
- **๐ Market Data**: Access pools, prices, and asset information
|
|
11
|
-
- **๐ Server-Side Focused**: Secure handling of
|
|
11
|
+
- **๐ Server-Side Focused**: Secure handling of API keys and sensitive operations
|
|
12
12
|
- **๐ TypeScript Support**: Full type safety with comprehensive interfaces
|
|
13
|
-
- **โก
|
|
13
|
+
- **โก Lightweight**: No complex authentication flows or token management
|
|
14
14
|
- **๐งช Well Tested**: Comprehensive unit test coverage
|
|
15
15
|
|
|
16
16
|
## ๐ Installation
|
|
@@ -26,8 +26,7 @@ import { SoroswapSDK, SupportedNetworks, SupportedProtocols, TradeType } from '@
|
|
|
26
26
|
|
|
27
27
|
// Initialize the SDK
|
|
28
28
|
const soroswapClient = new SoroswapSDK({
|
|
29
|
-
|
|
30
|
-
password: 'your-password'
|
|
29
|
+
apiKey: 'sk_your_api_key_here'
|
|
31
30
|
});
|
|
32
31
|
|
|
33
32
|
// Get a quote for a swap
|
|
@@ -60,8 +59,8 @@ console.log('Transaction result:', result);
|
|
|
60
59
|
|
|
61
60
|
```typescript
|
|
62
61
|
interface SoroswapSDKConfig {
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
apiKey: string; // Your Soroswap API key (starts with 'sk_')
|
|
63
|
+
baseUrl?: string; // Custom API base URL (defaults to 'https://api.soroswap.finance')
|
|
65
64
|
defaultNetwork?: SupportedNetworks; // SupportedNetworks.MAINNET | SupportedNetworks.TESTNET
|
|
66
65
|
timeout?: number; // Request timeout in ms (defaults to 30000) you might want to adjust this if using launchtube
|
|
67
66
|
}
|
|
@@ -73,23 +72,32 @@ For better security, you can use environment variables:
|
|
|
73
72
|
|
|
74
73
|
```typescript
|
|
75
74
|
const soroswapClient = new SoroswapSDK({
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
apiKey: process.env.SOROSWAP_API_KEY!,
|
|
76
|
+
baseUrl: process.env.SOROSWAP_API_URL, // Optional: for localhost or custom API
|
|
78
77
|
defaultNetwork: process.env.NODE_ENV === 'production'
|
|
79
78
|
? SupportedNetworks.MAINNET
|
|
80
79
|
: SupportedNetworks.TESTNET
|
|
81
80
|
});
|
|
81
|
+
|
|
82
|
+
// Example for local development:
|
|
83
|
+
const localClient = new SoroswapSDK({
|
|
84
|
+
apiKey: 'sk_local_api_key',
|
|
85
|
+
baseUrl: 'http://localhost:3000',
|
|
86
|
+
defaultNetwork: SupportedNetworks.TESTNET
|
|
87
|
+
});
|
|
82
88
|
```
|
|
83
89
|
|
|
84
90
|
## ๐ API Reference
|
|
85
91
|
|
|
86
92
|
### Authentication
|
|
87
93
|
|
|
88
|
-
The SDK
|
|
94
|
+
The SDK uses API key authentication - no complex authentication flows needed:
|
|
89
95
|
|
|
90
96
|
```typescript
|
|
91
|
-
//
|
|
92
|
-
const
|
|
97
|
+
// Simply initialize with your API key
|
|
98
|
+
const soroswapClient = new SoroswapSDK({
|
|
99
|
+
apiKey: 'sk_your_api_key_here'
|
|
100
|
+
});
|
|
93
101
|
```
|
|
94
102
|
|
|
95
103
|
### Trading Operations
|
|
@@ -110,7 +118,7 @@ const quote = await soroswapClient.quote({
|
|
|
110
118
|
amount: 1000000n, // BigInt required
|
|
111
119
|
tradeType: TradeType.EXACT_IN,
|
|
112
120
|
protocols: [SupportedProtocols.SOROSWAP, SupportedProtocols.AQUA],
|
|
113
|
-
|
|
121
|
+
slippageBps: '50', // 0.5% in basis points
|
|
114
122
|
maxHops: 2,
|
|
115
123
|
feeBps: 30, // Optional fee in basis points
|
|
116
124
|
});
|
|
@@ -191,7 +199,7 @@ if (pools.length > 0) {
|
|
|
191
199
|
amountA: amountA,
|
|
192
200
|
amountB: amountB,
|
|
193
201
|
to: 'YOUR_WALLET_ADDRESS',
|
|
194
|
-
|
|
202
|
+
slippageBps: '50' // 0.5%
|
|
195
203
|
});
|
|
196
204
|
|
|
197
205
|
// Sign and send the transaction
|
|
@@ -212,7 +220,7 @@ const removeLiquidityTx = await soroswapClient.removeLiquidity({
|
|
|
212
220
|
amountA: '450000',
|
|
213
221
|
amountB: '900000',
|
|
214
222
|
to: 'YOUR_WALLET_ADDRESS',
|
|
215
|
-
|
|
223
|
+
slippageBps: '50'
|
|
216
224
|
});
|
|
217
225
|
```
|
|
218
226
|
|
|
@@ -265,9 +273,9 @@ const aggregatorAddress = await soroswapClient.getContractAddress(SupportedNetwo
|
|
|
265
273
|
|
|
266
274
|
## ๐ Security Best Practices
|
|
267
275
|
|
|
268
|
-
1. **Environment Variables**: Store
|
|
276
|
+
1. **Environment Variables**: Store API keys in environment variables, not in code
|
|
269
277
|
2. **Server-Side Only**: This SDK is designed for server-side use only
|
|
270
|
-
3. **
|
|
278
|
+
3. **API Key Security**: Keep your API keys secure and never commit them to version control
|
|
271
279
|
4. **Error Handling**: Always wrap API calls in try-catch blocks
|
|
272
280
|
|
|
273
281
|
```typescript
|
|
@@ -311,9 +319,8 @@ pnpm run test:watch
|
|
|
311
319
|
Tests that actually call the Soroswap API:
|
|
312
320
|
|
|
313
321
|
```bash
|
|
314
|
-
# Set up
|
|
315
|
-
export
|
|
316
|
-
export SOROSWAP_PASSWORD="your-password"
|
|
322
|
+
# Set up API key first
|
|
323
|
+
export SOROSWAP_API_KEY="sk_your_api_key_here"
|
|
317
324
|
|
|
318
325
|
# Run integration tests
|
|
319
326
|
pnpm run test:integration
|
|
@@ -322,7 +329,7 @@ pnpm run test:integration
|
|
|
322
329
|
pnpm run test:all
|
|
323
330
|
```
|
|
324
331
|
|
|
325
|
-
**Note**: Integration tests require valid Soroswap
|
|
332
|
+
**Note**: Integration tests require a valid Soroswap API key and may fail due to network issues or API changes. See [Integration Test Documentation](./tests/integration/README.md) for detailed setup.
|
|
326
333
|
|
|
327
334
|
### Linting
|
|
328
335
|
|
|
@@ -341,6 +348,10 @@ While this SDK is server-side focused, you can create secure frontend integratio
|
|
|
341
348
|
// Backend API endpoint
|
|
342
349
|
app.post('/api/quote', async (req, res) => {
|
|
343
350
|
try {
|
|
351
|
+
const soroswapClient = new SoroswapSDK({
|
|
352
|
+
apiKey: process.env.SOROSWAP_API_KEY!
|
|
353
|
+
});
|
|
354
|
+
|
|
344
355
|
const quote = await soroswapClient.quote(req.body);
|
|
345
356
|
const buildResponse = await soroswapClient.build({
|
|
346
357
|
quote,
|
|
@@ -351,8 +362,6 @@ app.post('/api/quote', async (req, res) => {
|
|
|
351
362
|
res.json({
|
|
352
363
|
xdr: buildResponse.xdr,
|
|
353
364
|
quote: {
|
|
354
|
-
trade: quote.trade,
|
|
355
|
-
priceImpact: quote.priceImpact,
|
|
356
365
|
assetIn: quote.assetIn,
|
|
357
366
|
assetOut: quote.assetOut,
|
|
358
367
|
tradeType: quote.tradeType
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { AxiosRequestConfig } from 'axios';
|
|
2
2
|
/**
|
|
3
|
-
* HTTP client wrapper with
|
|
3
|
+
* HTTP client wrapper with API key authentication and error handling
|
|
4
4
|
*/
|
|
5
5
|
export declare class HttpClient {
|
|
6
6
|
private client;
|
|
7
|
-
|
|
8
|
-
constructor(baseURL: string, timeout: number | undefined, tokenProvider: () => Promise<string | null>);
|
|
7
|
+
constructor(baseURL: string, apiKey: string, timeout?: number);
|
|
9
8
|
/**
|
|
10
9
|
* Transform axios error to APIError
|
|
11
10
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/clients/http-client.ts"],"names":[],"mappings":"AACA,OAAc,EAAiB,kBAAkB,EAAiB,MAAM,OAAO,CAAC;AAEhF;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAgB;
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/clients/http-client.ts"],"names":[],"mappings":"AACA,OAAc,EAAiB,kBAAkB,EAAiB,MAAM,OAAO,CAAC;AAEhF;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAgB;gBAG5B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAAc;IAgCzB;;OAEG;IACH,OAAO,CAAC,cAAc;IA0BtB;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAKlE;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC;IAK/E;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM;CAaxE"}
|
|
@@ -7,40 +7,27 @@ exports.HttpClient = void 0;
|
|
|
7
7
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
8
8
|
const axios_1 = __importDefault(require("axios"));
|
|
9
9
|
/**
|
|
10
|
-
* HTTP client wrapper with
|
|
10
|
+
* HTTP client wrapper with API key authentication and error handling
|
|
11
11
|
*/
|
|
12
12
|
class HttpClient {
|
|
13
|
-
constructor(baseURL, timeout = 30000
|
|
14
|
-
this.tokenProvider = tokenProvider;
|
|
13
|
+
constructor(baseURL, apiKey, timeout = 30000) {
|
|
15
14
|
this.client = axios_1.default.create({
|
|
16
15
|
baseURL,
|
|
17
16
|
timeout,
|
|
18
17
|
headers: {
|
|
19
18
|
'Content-Type': 'application/json',
|
|
19
|
+
'Authorization': `Bearer ${apiKey}`,
|
|
20
20
|
},
|
|
21
21
|
// Add custom transformRequest to handle BigInt serialization
|
|
22
22
|
transformRequest: [
|
|
23
23
|
(data) => {
|
|
24
24
|
if (data && typeof data === 'object') {
|
|
25
|
-
return JSON.stringify(data, (
|
|
25
|
+
return JSON.stringify(data, (_, value) => typeof value === 'bigint' ? value.toString() : value);
|
|
26
26
|
}
|
|
27
27
|
return data;
|
|
28
28
|
}
|
|
29
29
|
],
|
|
30
30
|
});
|
|
31
|
-
// Add request interceptor to inject auth token
|
|
32
|
-
this.client.interceptors.request.use(async (config) => {
|
|
33
|
-
// Skip auth for authentication endpoints to prevent infinite loops
|
|
34
|
-
const authEndpoints = ['/login', '/refresh', '/health'];
|
|
35
|
-
const isAuthEndpoint = authEndpoints.some(endpoint => config.url?.includes(endpoint));
|
|
36
|
-
if (!isAuthEndpoint) {
|
|
37
|
-
const token = await this.tokenProvider();
|
|
38
|
-
config.headers.Authorization = `Bearer ${token}`;
|
|
39
|
-
}
|
|
40
|
-
return config;
|
|
41
|
-
}, (error) => {
|
|
42
|
-
return Promise.reject(this.transformError(error));
|
|
43
|
-
});
|
|
44
31
|
// Add response interceptor for error handling
|
|
45
32
|
this.client.interceptors.response.use((response) => response, (error) => {
|
|
46
33
|
return Promise.reject(this.transformError(error));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/clients/http-client.ts"],"names":[],"mappings":";;;;;;AAAA,uDAAuD;AACvD,kDAAgF;AAEhF;;GAEG;AACH,MAAa,UAAU;
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/clients/http-client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
export { SoroswapSDK } from './soroswap-sdk';
|
|
2
2
|
export * from './types';
|
|
3
|
-
export { AuthManager } from './auth/auth-manager';
|
|
4
|
-
export { TokenCache } from './cache/token-cache';
|
|
5
3
|
export { HttpClient } from './clients/http-client';
|
|
6
4
|
import { SoroswapSDK } from './soroswap-sdk';
|
|
7
5
|
export default SoroswapSDK;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,eAAe,WAAW,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -14,17 +14,13 @@ 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.HttpClient = exports.
|
|
17
|
+
exports.HttpClient = exports.SoroswapSDK = void 0;
|
|
18
18
|
// Main SDK class
|
|
19
19
|
var soroswap_sdk_1 = require("./soroswap-sdk");
|
|
20
20
|
Object.defineProperty(exports, "SoroswapSDK", { enumerable: true, get: function () { return soroswap_sdk_1.SoroswapSDK; } });
|
|
21
21
|
// Export all types for TypeScript users
|
|
22
22
|
__exportStar(require("./types"), exports);
|
|
23
23
|
// Export utility classes that might be useful
|
|
24
|
-
var auth_manager_1 = require("./auth/auth-manager");
|
|
25
|
-
Object.defineProperty(exports, "AuthManager", { enumerable: true, get: function () { return auth_manager_1.AuthManager; } });
|
|
26
|
-
var token_cache_1 = require("./cache/token-cache");
|
|
27
|
-
Object.defineProperty(exports, "TokenCache", { enumerable: true, get: function () { return token_cache_1.TokenCache; } });
|
|
28
24
|
var http_client_1 = require("./clients/http-client");
|
|
29
25
|
Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function () { return http_client_1.HttpClient; } });
|
|
30
26
|
// Default export is the main SDK class
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AAEpB,wCAAwC;AACxC,0CAAwB;AAExB,8CAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iBAAiB;AACjB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AAEpB,wCAAwC;AACxC,0CAAwB;AAExB,8CAA8C;AAC9C,qDAAmD;AAA1C,yGAAA,UAAU,OAAA;AAEnB,uCAAuC;AACvC,iDAA6C;AAC7C,kBAAe,0BAAW,CAAC"}
|
package/dist/soroswap-sdk.d.ts
CHANGED
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
import { AddLiquidityRequest, AssetList, AssetListInfo, BuildQuoteRequest, BuildQuoteResponse, LiquidityResponse, Pool, PriceData, QuoteRequest, QuoteResponse, RemoveLiquidityRequest, SoroswapSDKConfig, SupportedAssetLists, SupportedNetworks, UserPosition } from './types';
|
|
2
2
|
/**
|
|
3
3
|
* Main Soroswap SDK class
|
|
4
|
-
* Provides access to all Soroswap API functionality with
|
|
4
|
+
* Provides access to all Soroswap API functionality with API key authentication
|
|
5
5
|
*/
|
|
6
6
|
export declare class SoroswapSDK {
|
|
7
|
-
private authManager;
|
|
8
7
|
private httpClient;
|
|
9
8
|
private defaultNetwork;
|
|
10
9
|
constructor(config: SoroswapSDKConfig);
|
|
11
10
|
/**
|
|
12
|
-
*
|
|
11
|
+
* Transform asset list from enum URLs to simple strings for API
|
|
13
12
|
*/
|
|
14
|
-
|
|
13
|
+
private transformAssetList;
|
|
15
14
|
/**
|
|
16
15
|
* Get contract address for a specific network and contract name
|
|
17
16
|
*/
|
|
@@ -37,7 +36,7 @@ export declare class SoroswapSDK {
|
|
|
37
36
|
/**
|
|
38
37
|
* Get pools for specific protocols
|
|
39
38
|
*/
|
|
40
|
-
getPools(network: SupportedNetworks, protocols: string[], assetList?: SupportedAssetLists[]): Promise<Pool[]>;
|
|
39
|
+
getPools(network: SupportedNetworks, protocols: string[], assetList?: (SupportedAssetLists | string)[]): Promise<Pool[]>;
|
|
41
40
|
/**
|
|
42
41
|
* Get pool for specific token pair
|
|
43
42
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"soroswap-sdk.d.ts","sourceRoot":"","sources":["../src/soroswap-sdk.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"soroswap-sdk.d.ts","sourceRoot":"","sources":["../src/soroswap-sdk.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,IAAI,EACJ,SAAS,EACT,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACb,MAAM,SAAS,CAAC;AAGjB;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,cAAc,CAAoB;gBAE9B,MAAM,EAAE,iBAAiB;IAcrC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqC1B;;OAEG;IACG,kBAAkB,CACtB,OAAO,EAAE,iBAAiB,EAC1B,YAAY,EAAE,SAAS,GAAG,QAAQ,GAAG,YAAY,GAChD,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAC,CAAC;IAQ7B;;OAEG;IACG,YAAY,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMlE;;OAEG;IACG,KAAK,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAa5F;;OAEG;IACG,KAAK,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAM3G;;OAEG;IACG,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC;IAY/F;;OAEG;IACG,QAAQ,CACZ,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,CAAC,EAAE,CAAC,mBAAmB,GAAG,MAAM,CAAC,EAAE,GAC3C,OAAO,CAAC,IAAI,EAAE,CAAC;IAclB;;OAEG;IACG,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,IAAI,EAAE,CAAC;IAclB;;OAEG;IACG,YAAY,CAChB,aAAa,EAAE,mBAAmB,EAClC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,iBAAiB,CAAC;IAM7B;;OAEG;IACG,eAAe,CACnB,aAAa,EAAE,sBAAsB,EACrC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,iBAAiB,CAAC;IAM7B;;OAEG;IACG,gBAAgB,CACpB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,YAAY,EAAE,CAAC;IAU1B;;OAEG;IACG,YAAY,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,aAAa,EAAE,CAAC;IAWtF;;OAEG;IACG,QAAQ,CACZ,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EACzB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,SAAS,EAAE,CAAC;CASxB"}
|
package/dist/soroswap-sdk.js
CHANGED
|
@@ -1,33 +1,58 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SoroswapSDK = void 0;
|
|
4
|
-
const auth_manager_1 = require("./auth/auth-manager");
|
|
5
4
|
const http_client_1 = require("./clients/http-client");
|
|
6
5
|
const types_1 = require("./types");
|
|
7
6
|
/**
|
|
8
7
|
* Main Soroswap SDK class
|
|
9
|
-
* Provides access to all Soroswap API functionality with
|
|
8
|
+
* Provides access to all Soroswap API functionality with API key authentication
|
|
10
9
|
*/
|
|
11
10
|
class SoroswapSDK {
|
|
12
11
|
constructor(config) {
|
|
13
12
|
this.defaultNetwork = config.defaultNetwork || types_1.SupportedNetworks.MAINNET;
|
|
14
|
-
// Initialize
|
|
15
|
-
|
|
16
|
-
email: config.email,
|
|
17
|
-
password: config.password
|
|
18
|
-
});
|
|
19
|
-
// Initialize HTTP client
|
|
20
|
-
const baseURL = 'https://api.soroswap.finance';
|
|
13
|
+
// Initialize HTTP client with API key
|
|
14
|
+
const baseURL = config.baseUrl || 'https://api.soroswap.finance';
|
|
21
15
|
const timeout = config.timeout || 30000;
|
|
22
|
-
this.httpClient = new http_client_1.HttpClient(baseURL,
|
|
23
|
-
// Inject HTTP client into auth manager
|
|
24
|
-
this.authManager.setHttpClient(this.httpClient);
|
|
16
|
+
this.httpClient = new http_client_1.HttpClient(baseURL, config.apiKey, timeout);
|
|
25
17
|
}
|
|
26
18
|
/**
|
|
27
|
-
*
|
|
19
|
+
* Transform asset list from enum URLs to simple strings for API
|
|
28
20
|
*/
|
|
29
|
-
|
|
30
|
-
return
|
|
21
|
+
transformAssetList(assetList) {
|
|
22
|
+
return assetList.map(asset => {
|
|
23
|
+
if (typeof asset === 'string') {
|
|
24
|
+
// If it's already a string, check if it's an enum URL
|
|
25
|
+
if (Object.values(types_1.SupportedAssetLists).includes(asset)) {
|
|
26
|
+
// Extract the identifier from the URL
|
|
27
|
+
switch (asset) {
|
|
28
|
+
case types_1.SupportedAssetLists.SOROSWAP:
|
|
29
|
+
return 'soroswap';
|
|
30
|
+
case types_1.SupportedAssetLists.STELLAR_EXPERT:
|
|
31
|
+
return 'stellar_expert';
|
|
32
|
+
case types_1.SupportedAssetLists.LOBSTR:
|
|
33
|
+
return 'lobstr';
|
|
34
|
+
case types_1.SupportedAssetLists.AQUA:
|
|
35
|
+
return 'aqua';
|
|
36
|
+
default:
|
|
37
|
+
return asset;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return asset;
|
|
41
|
+
}
|
|
42
|
+
// If it's an enum, transform to simple string
|
|
43
|
+
switch (asset) {
|
|
44
|
+
case types_1.SupportedAssetLists.SOROSWAP:
|
|
45
|
+
return 'soroswap';
|
|
46
|
+
case types_1.SupportedAssetLists.STELLAR_EXPERT:
|
|
47
|
+
return 'stellar_expert';
|
|
48
|
+
case types_1.SupportedAssetLists.LOBSTR:
|
|
49
|
+
return 'lobstr';
|
|
50
|
+
case types_1.SupportedAssetLists.AQUA:
|
|
51
|
+
return 'aqua';
|
|
52
|
+
default:
|
|
53
|
+
return asset;
|
|
54
|
+
}
|
|
55
|
+
});
|
|
31
56
|
}
|
|
32
57
|
/**
|
|
33
58
|
* Get contract address for a specific network and contract name
|
|
@@ -52,7 +77,12 @@ class SoroswapSDK {
|
|
|
52
77
|
async quote(quoteRequest, network) {
|
|
53
78
|
const params = { network: network || this.defaultNetwork };
|
|
54
79
|
const url = this.httpClient.buildUrlWithQuery('/quote', params);
|
|
55
|
-
|
|
80
|
+
// Transform the request to convert enum URLs to simple strings
|
|
81
|
+
const transformedRequest = { ...quoteRequest };
|
|
82
|
+
if (transformedRequest.assetList) {
|
|
83
|
+
transformedRequest.assetList = this.transformAssetList(transformedRequest.assetList);
|
|
84
|
+
}
|
|
85
|
+
return this.httpClient.post(url, transformedRequest);
|
|
56
86
|
}
|
|
57
87
|
/**
|
|
58
88
|
* This builds the quote into an XDR transaction
|
|
@@ -83,7 +113,7 @@ class SoroswapSDK {
|
|
|
83
113
|
protocol: protocols
|
|
84
114
|
};
|
|
85
115
|
if (assetList) {
|
|
86
|
-
params.assetList = assetList;
|
|
116
|
+
params.assetList = this.transformAssetList(assetList);
|
|
87
117
|
}
|
|
88
118
|
const url = this.httpClient.buildUrlWithQuery('/pools', params);
|
|
89
119
|
return this.httpClient.get(url);
|
package/dist/soroswap-sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"soroswap-sdk.js","sourceRoot":"","sources":["../src/soroswap-sdk.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"soroswap-sdk.js","sourceRoot":"","sources":["../src/soroswap-sdk.ts"],"names":[],"mappings":"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"}
|
package/dist/types/common.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/types/common.ts"],"names":[],"mappings":"AACA,oBAAY,SAAS;IACnB,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAGD,oBAAY,mBAAmB;IAC7B,QAAQ,8EAA8E;IACtF,cAAc,gEAAgE;IAC9E,MAAM,qDAAqD;IAC3D,IAAI,0EAA0E;CAC/E;AAED,oBAAY,kBAAkB;IAC5B,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,IAAI,SAAS;IAEb,IAAI,SAAS;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/types/common.ts"],"names":[],"mappings":"AACA,oBAAY,SAAS;IACnB,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAGD,oBAAY,mBAAmB;IAC7B,QAAQ,8EAA8E;IACtF,cAAc,gEAAgE;IAC9E,MAAM,qDAAqD;IAC3D,IAAI,0EAA0E;CAC/E;AAED,oBAAY,kBAAkB;IAC5B,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,IAAI,SAAS;IAEb,IAAI,SAAS;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
|
package/dist/types/index.js
CHANGED
|
@@ -15,7 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./assets"), exports);
|
|
18
|
-
__exportStar(require("./auth"), exports);
|
|
19
18
|
__exportStar(require("./common"), exports);
|
|
20
19
|
__exportStar(require("./pools"), exports);
|
|
21
20
|
__exportStar(require("./price"), exports);
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AACxB,0CAAwB;AACxB,yCAAuB"}
|
package/dist/types/pools.d.ts
CHANGED
|
@@ -35,7 +35,7 @@ export interface AddLiquidityRequest {
|
|
|
35
35
|
amountA: bigint;
|
|
36
36
|
amountB: bigint;
|
|
37
37
|
to: string;
|
|
38
|
-
|
|
38
|
+
slippageBps?: string;
|
|
39
39
|
}
|
|
40
40
|
export interface LiquidityResponse {
|
|
41
41
|
xdr: string;
|
|
@@ -51,7 +51,7 @@ export interface RemoveLiquidityRequest {
|
|
|
51
51
|
amountA: bigint;
|
|
52
52
|
amountB: bigint;
|
|
53
53
|
to: string;
|
|
54
|
-
|
|
54
|
+
slippageBps?: string;
|
|
55
55
|
}
|
|
56
56
|
export interface UserPosition {
|
|
57
57
|
poolInfo: Pool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pools.d.ts","sourceRoot":"","sources":["../../src/types/pools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,IAAI;IACnB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CACvC;AAED,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;CACtC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,
|
|
1
|
+
{"version":3,"file":"pools.d.ts","sourceRoot":"","sources":["../../src/types/pools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,IAAI;IACnB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CACvC;AAED,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;CACtC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,eAAe,CAAA;IACrB,QAAQ,EAAE,IAAI,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,IAAI,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;CACrB"}
|
package/dist/types/quote.d.ts
CHANGED
|
@@ -6,9 +6,9 @@ export interface QuoteRequest {
|
|
|
6
6
|
tradeType: TradeType;
|
|
7
7
|
protocols: SupportedProtocols[];
|
|
8
8
|
parts?: number;
|
|
9
|
-
|
|
9
|
+
slippageBps?: number;
|
|
10
10
|
maxHops?: number;
|
|
11
|
-
assetList?: SupportedAssetLists[];
|
|
11
|
+
assetList?: (SupportedAssetLists | string)[];
|
|
12
12
|
feeBps?: number;
|
|
13
13
|
gaslessTrustline?: boolean;
|
|
14
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote.d.ts","sourceRoot":"","sources":["../../src/types/quote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGlG,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,
|
|
1
|
+
{"version":3,"file":"quote.d.ts","sourceRoot":"","sources":["../../src/types/quote.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED