@gala-chain/launchpad-sdk 3.27.4 → 3.28.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.
- package/CHANGELOG.md +12 -0
- package/README.md +149 -0
- package/dist/LaunchpadSDK.d.ts +100 -0
- package/dist/LaunchpadSDK.d.ts.map +1 -1
- package/dist/constants/version.generated.d.ts +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +1 -1
- package/dist/services/DexPoolService.d.ts +95 -0
- package/dist/services/DexPoolService.d.ts.map +1 -0
- package/dist/types/dex-pool.dto.d.ts +174 -0
- package/dist/types/dex-pool.dto.d.ts.map +1 -0
- package/package.json +4 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.28.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- feat: Add DEX Pool Discovery feature with 2 new SDK methods
|
|
8
|
+
- `fetchDexPools()` - Paginated DEX liquidity pool discovery with search, filtering, and sorting
|
|
9
|
+
- `fetchAllDexPools()` - Auto-paginated complete pool data retrieval
|
|
10
|
+
- New `DexPoolService` for GalaSwap pool exploration
|
|
11
|
+
- Comprehensive pool analysis capabilities (TVL, volume, APR, fee metrics)
|
|
12
|
+
- Support for token pair discovery and market statistics
|
|
13
|
+
- 13 integration tests with full coverage
|
|
14
|
+
|
|
3
15
|
## 3.27.3
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -61,6 +61,9 @@ console.log(pools.hasNext); // Computed convenience properties
|
|
|
61
61
|
- **Helper Functions**: Auto-detecting wallet creation and SDK factory functions
|
|
62
62
|
- **Pool Management**: Create, fetch, and check token pools on the launchpad
|
|
63
63
|
- **Token Trading**: Buy and sell tokens with slippage protection via GalaChain
|
|
64
|
+
- **DEX Pool Discovery**: Discover and explore GalaSwap liquidity pools with filtering, sorting, and pagination
|
|
65
|
+
- **DEX Trading**: Real-time token swaps on GalaSwap DEX with quote generation and slippage protection
|
|
66
|
+
- **Liquidity Management**: Manage liquidity positions on GalaSwap (add, remove, collect fees)
|
|
64
67
|
- **Token Transfers**: Transfer GALA and launchpad tokens between wallets with EIP-712 signatures
|
|
65
68
|
- **User Operations**: Portfolio management, token balances, and account management
|
|
66
69
|
- **Comment System**: Post and retrieve comments on token pools
|
|
@@ -289,6 +292,152 @@ const result = await sdk.buy({
|
|
|
289
292
|
- ✅ Missing wallet throws `ValidationError` with code `WALLET_REQUIRED`
|
|
290
293
|
- ⚠️ Only methods that sign transactions require a wallet
|
|
291
294
|
|
|
295
|
+
## DEX Pool Discovery & Analysis
|
|
296
|
+
|
|
297
|
+
### Overview
|
|
298
|
+
|
|
299
|
+
The SDK provides complete DEX liquidity pool discovery for GalaSwap with filtering, sorting, and pagination. Perfect for finding trading pairs, analyzing pool metrics, and discovering investment opportunities.
|
|
300
|
+
|
|
301
|
+
```typescript
|
|
302
|
+
import { createLaunchpadSDK } from '@gala-chain/launchpad-sdk';
|
|
303
|
+
|
|
304
|
+
const sdk = createLaunchpadSDK({});
|
|
305
|
+
|
|
306
|
+
// Discover DEX pools with filtering
|
|
307
|
+
const pools = await sdk.fetchDexPools({
|
|
308
|
+
search: 'GALA', // Filter by token symbol
|
|
309
|
+
sortBy: 'tvl', // Sort options: tvl, volume30d, volume1d
|
|
310
|
+
sortOrder: 'desc', // asc or desc
|
|
311
|
+
page: 1, // Pagination (default: 1)
|
|
312
|
+
limit: 10 // Results per page (default: 10, max: 20)
|
|
313
|
+
});
|
|
314
|
+
|
|
315
|
+
console.log(`Found ${pools.total} total pools`);
|
|
316
|
+
console.log(`Showing ${pools.pools.length} pools on page ${pools.page}`);
|
|
317
|
+
|
|
318
|
+
// Fetch ALL pools with automatic pagination
|
|
319
|
+
const allPools = await sdk.fetchAllDexPools({
|
|
320
|
+
search: 'GUSDC',
|
|
321
|
+
sortBy: 'volume30d',
|
|
322
|
+
sortOrder: 'asc'
|
|
323
|
+
});
|
|
324
|
+
|
|
325
|
+
console.log(`Retrieved ${allPools.pools.length} total pools`);
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
### Pool Data Structure
|
|
329
|
+
|
|
330
|
+
Each DEX pool includes comprehensive trading metrics:
|
|
331
|
+
|
|
332
|
+
```typescript
|
|
333
|
+
interface DexPoolData {
|
|
334
|
+
poolPair: string; // e.g., "GALA/GUSDC"
|
|
335
|
+
poolHash: string; // Unique pool identifier
|
|
336
|
+
token0: string; // Token A symbol
|
|
337
|
+
token1: string; // Token B symbol
|
|
338
|
+
token0Price: string; // Token A USD price
|
|
339
|
+
token1Price: string; // Token B USD price
|
|
340
|
+
fee: string; // Fee tier (0.05%, 0.30%, 1.00%)
|
|
341
|
+
fee24h: number; // 24h accumulated fees
|
|
342
|
+
tvl: number; // Total Value Locked (USD)
|
|
343
|
+
token0Tvl: number; // TVL in Token A
|
|
344
|
+
token1Tvl: number; // TVL in Token B
|
|
345
|
+
token0TvlUsd: number; // Token A TVL in USD
|
|
346
|
+
token1TvlUsd: number; // Token B TVL in USD
|
|
347
|
+
volume1d: number; // 24h trading volume
|
|
348
|
+
volume30d: number; // 30d trading volume
|
|
349
|
+
apr1d: number; // 24h APR for liquidity providers
|
|
350
|
+
dayPerTvl: number; // Fee ratio (volume/TVL)
|
|
351
|
+
}
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
### Common Use Cases
|
|
355
|
+
|
|
356
|
+
**Find high-volume pools:**
|
|
357
|
+
```typescript
|
|
358
|
+
const highVolumePoolsAsc = await sdk.fetchAllDexPools({
|
|
359
|
+
sortBy: 'volume1d',
|
|
360
|
+
sortOrder: 'desc'
|
|
361
|
+
});
|
|
362
|
+
|
|
363
|
+
const topPool = highVolumePoolsAsc.pools[0];
|
|
364
|
+
console.log(`Highest volume pair: ${topPool.poolPair}`);
|
|
365
|
+
console.log(`24h Volume: $${topPool.volume1d}`);
|
|
366
|
+
console.log(`APR: ${topPool.apr1d.toFixed(2)}%`);
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
**Discover GALA trading pairs:**
|
|
370
|
+
```typescript
|
|
371
|
+
const galaPools = await sdk.fetchDexPools({
|
|
372
|
+
search: 'GALA',
|
|
373
|
+
sortBy: 'tvl',
|
|
374
|
+
limit: 20
|
|
375
|
+
});
|
|
376
|
+
|
|
377
|
+
galaPools.pools.forEach(pool => {
|
|
378
|
+
console.log(`${pool.poolPair}: $${pool.tvl.toLocaleString()} TVL`);
|
|
379
|
+
});
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
**Analyze liquidity provider opportunities:**
|
|
383
|
+
```typescript
|
|
384
|
+
const liquidityOpportunities = await sdk.fetchAllDexPools({
|
|
385
|
+
sortBy: 'apr1d',
|
|
386
|
+
sortOrder: 'desc'
|
|
387
|
+
});
|
|
388
|
+
|
|
389
|
+
// Find pools with highest APR
|
|
390
|
+
const bestAprPools = liquidityOpportunities.pools.slice(0, 10);
|
|
391
|
+
bestAprPools.forEach(pool => {
|
|
392
|
+
console.log(`${pool.poolPair}: ${pool.apr1d.toFixed(2)}% APR`);
|
|
393
|
+
});
|
|
394
|
+
```
|
|
395
|
+
|
|
396
|
+
### Sorting Options
|
|
397
|
+
|
|
398
|
+
| Sort Value | Description | Best For |
|
|
399
|
+
|-----------|-------------|----------|
|
|
400
|
+
| `tvl` (default) | Total Value Locked | Finding main liquidity pools |
|
|
401
|
+
| `volume1d` | 24-hour trading volume | High-activity pairs |
|
|
402
|
+
| `volume30d` | 30-day trading volume | Trend analysis |
|
|
403
|
+
|
|
404
|
+
### Pagination
|
|
405
|
+
|
|
406
|
+
The SDK enforces a **maximum of 20 items per page** (backend limit). Use `fetchAllDexPools()` for complete enumeration:
|
|
407
|
+
|
|
408
|
+
```typescript
|
|
409
|
+
// Page-by-page discovery (20 max per page)
|
|
410
|
+
const page1 = await sdk.fetchDexPools({ page: 1, limit: 20 });
|
|
411
|
+
console.log(`Page 1: ${page1.pools.length} pools`);
|
|
412
|
+
console.log(`Total pages: ${page1.totalPages}`);
|
|
413
|
+
console.log(`Has next: ${page1.hasNext}`);
|
|
414
|
+
|
|
415
|
+
// Automatic pagination - get all at once
|
|
416
|
+
const allAtOnce = await sdk.fetchAllDexPools();
|
|
417
|
+
console.log(`All pools: ${allAtOnce.pools.length}`);
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
### Development vs Production Environments
|
|
421
|
+
|
|
422
|
+
The SDK automatically uses the correct DEX backend based on your environment configuration:
|
|
423
|
+
|
|
424
|
+
```typescript
|
|
425
|
+
// Production (default)
|
|
426
|
+
const prodSdk = createLaunchpadSDK({
|
|
427
|
+
environment: 'production' // Uses prod DEX backend
|
|
428
|
+
});
|
|
429
|
+
|
|
430
|
+
// Development
|
|
431
|
+
const devSdk = createLaunchpadSDK({
|
|
432
|
+
environment: 'development' // Uses dev DEX backend
|
|
433
|
+
});
|
|
434
|
+
|
|
435
|
+
// Custom URL
|
|
436
|
+
const customSdk = createLaunchpadSDK({
|
|
437
|
+
dexBackendBaseUrl: 'https://custom-dex.example.com'
|
|
438
|
+
});
|
|
439
|
+
```
|
|
440
|
+
|
|
292
441
|
## AI Agent Integration
|
|
293
442
|
|
|
294
443
|
### For Claude Desktop Users
|
package/dist/LaunchpadSDK.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { WebSocketError, WebSocketTimeoutError, TransactionFailedError } from '.
|
|
|
9
9
|
export { WebSocketError, WebSocketTimeoutError, TransactionFailedError, };
|
|
10
10
|
import { FetchCommentsOptions, PostCommentOptions, FetchVolumeDataOptions, FetchTradesOptions, CalculateBuyAmountOptions, CalculateSellAmountOptions, CalculateBuyAmountLocalOptions, CalculateSellAmountLocalOptions, BuyTokenOptions, SellTokenOptions, UploadImageByTokenNameOptions, FetchTokensHeldOptions, FetchTokensCreatedOptions, GraduateTokenOptions, FetchLaunchpadTokenSpotPriceOptions, FetchTokenSpotPriceParams, CalculateBuyAmountForGraduationOptions } from './types/options.dto';
|
|
11
11
|
import { FetchPriceHistoryOptions, PriceHistoryResult } from './types/priceHistory.dto';
|
|
12
|
+
import { FetchDexPoolsOptions, DexPoolsResult } from './types/dex-pool.dto';
|
|
12
13
|
/**
|
|
13
14
|
* Configuration for initializing the Launchpad SDK
|
|
14
15
|
*
|
|
@@ -162,6 +163,7 @@ export declare class LaunchpadSDK {
|
|
|
162
163
|
private readonly websocketService;
|
|
163
164
|
private readonly priceHistoryService;
|
|
164
165
|
private readonly gswapService;
|
|
166
|
+
private readonly dexPoolService;
|
|
165
167
|
private readonly cache;
|
|
166
168
|
private readonly launchpadAPI;
|
|
167
169
|
constructor(config: LaunchpadSDKConfig);
|
|
@@ -584,6 +586,104 @@ export declare class LaunchpadSDK {
|
|
|
584
586
|
tokenName?: string;
|
|
585
587
|
type?: 'recent' | 'popular';
|
|
586
588
|
}): Promise<PoolsResult>;
|
|
589
|
+
/**
|
|
590
|
+
* Fetch DEX pools with pagination and filtering
|
|
591
|
+
*
|
|
592
|
+
* Queries the GalaSwap DEX backend for available liquidity pools with support for:
|
|
593
|
+
* - Pagination (max 20 per page)
|
|
594
|
+
* - Sorting by TVL, 30-day volume, or 1-day volume
|
|
595
|
+
* - Search filtering by token symbols
|
|
596
|
+
*
|
|
597
|
+
* Perfect for discovering trading pairs and analyzing liquidity across the DEX.
|
|
598
|
+
*
|
|
599
|
+
* @category DEX Pool Discovery
|
|
600
|
+
* @param options Optional pagination, sorting, and filtering options
|
|
601
|
+
* @returns Promise<DexPoolsResult> Paginated pool data with metadata
|
|
602
|
+
* @since 3.28.0
|
|
603
|
+
*
|
|
604
|
+
* @example Fetch top 10 pools by volume
|
|
605
|
+
* ```typescript
|
|
606
|
+
* const result = await sdk.fetchDexPools({
|
|
607
|
+
* sortBy: 'volume1d',
|
|
608
|
+
* sortOrder: 'desc',
|
|
609
|
+
* limit: 10,
|
|
610
|
+
* page: 1
|
|
611
|
+
* });
|
|
612
|
+
*
|
|
613
|
+
* console.log(`Found ${result.total} total pools`);
|
|
614
|
+
* console.log(`Showing page ${result.page} of ${result.totalPages}`);
|
|
615
|
+
*
|
|
616
|
+
* result.pools.forEach(pool => {
|
|
617
|
+
* console.log(`${pool.poolName}: $${pool.tvl.toFixed(2)} TVL`);
|
|
618
|
+
* });
|
|
619
|
+
* ```
|
|
620
|
+
*
|
|
621
|
+
* @example Search for GALA pools
|
|
622
|
+
* ```typescript
|
|
623
|
+
* const galaPools = await sdk.fetchDexPools({
|
|
624
|
+
* search: 'GALA',
|
|
625
|
+
* limit: 20
|
|
626
|
+
* });
|
|
627
|
+
*
|
|
628
|
+
* console.log(`Found ${galaPools.pools.length} GALA trading pairs`);
|
|
629
|
+
* ```
|
|
630
|
+
*
|
|
631
|
+
* @example Get pools sorted by TVL (default)
|
|
632
|
+
* ```typescript
|
|
633
|
+
* const topTvl = await sdk.fetchDexPools({
|
|
634
|
+
* sortBy: 'tvl',
|
|
635
|
+
* sortOrder: 'desc',
|
|
636
|
+
* limit: 5
|
|
637
|
+
* });
|
|
638
|
+
* ```
|
|
639
|
+
*/
|
|
640
|
+
fetchDexPools(options?: FetchDexPoolsOptions): Promise<DexPoolsResult>;
|
|
641
|
+
/**
|
|
642
|
+
* Fetch ALL DEX pools with automatic pagination
|
|
643
|
+
*
|
|
644
|
+
* Convenience method that automatically handles pagination to retrieve all available
|
|
645
|
+
* DEX pools in one call. Uses maximum page size (20) internally for efficiency.
|
|
646
|
+
*
|
|
647
|
+
* This is useful when you need complete pool data regardless of result size.
|
|
648
|
+
* For large result sets or when you prefer manual pagination, use fetchDexPools().
|
|
649
|
+
*
|
|
650
|
+
* @category DEX Pool Discovery
|
|
651
|
+
* @param options Optional sorting and filtering options (no pagination fields)
|
|
652
|
+
* @returns Promise<DexPoolsResult> All pools with flattened pagination metadata
|
|
653
|
+
* @since 3.28.0
|
|
654
|
+
*
|
|
655
|
+
* @example Fetch all pools sorted by TVL
|
|
656
|
+
* ```typescript
|
|
657
|
+
* const allPools = await sdk.fetchAllDexPools({
|
|
658
|
+
* sortBy: 'tvl',
|
|
659
|
+
* sortOrder: 'desc'
|
|
660
|
+
* });
|
|
661
|
+
*
|
|
662
|
+
* console.log(`Total pools: ${allPools.total}`);
|
|
663
|
+
*
|
|
664
|
+
* // Find top GALA pools
|
|
665
|
+
* const galaPools = allPools.pools
|
|
666
|
+
* .filter(p => p.poolName.includes('GALA'))
|
|
667
|
+
* .slice(0, 10);
|
|
668
|
+
*
|
|
669
|
+
* galaPools.forEach(pool => {
|
|
670
|
+
* console.log(`${pool.poolName}: APR ${pool.apr1d.toFixed(2)}%`);
|
|
671
|
+
* });
|
|
672
|
+
* ```
|
|
673
|
+
*
|
|
674
|
+
* @example Analyze token pairs
|
|
675
|
+
* ```typescript
|
|
676
|
+
* const allPools = await sdk.fetchAllDexPools();
|
|
677
|
+
*
|
|
678
|
+
* // Find pools by token
|
|
679
|
+
* const guscPairs = allPools.pools.filter(p =>
|
|
680
|
+
* p.poolName.includes('GUSDC')
|
|
681
|
+
* );
|
|
682
|
+
*
|
|
683
|
+
* console.log(`GUSDC trading pairs: ${guscPairs.length}`);
|
|
684
|
+
* ```
|
|
685
|
+
*/
|
|
686
|
+
fetchAllDexPools(options?: Omit<FetchDexPoolsOptions, 'page' | 'limit'>): Promise<DexPoolsResult>;
|
|
587
687
|
/**
|
|
588
688
|
* Fetch token distribution information
|
|
589
689
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LaunchpadSDK.d.ts","sourceRoot":"","sources":["../src/LaunchpadSDK.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"LaunchpadSDK.d.ts","sourceRoot":"","sources":["../src/LaunchpadSDK.ts"],"names":[],"mappings":"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"}
|