@gala-chain/launchpad-sdk 3.8.0 → 3.9.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/README.md +235 -0
- package/dist/LaunchpadSDK.d.ts +66 -6
- package/dist/LaunchpadSDK.d.ts.map +1 -1
- package/dist/api/LaunchpadAPI.d.ts +33 -10
- package/dist/api/LaunchpadAPI.d.ts.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +1 -1
- package/dist/types/options.dto.d.ts +84 -0
- package/dist/types/options.dto.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -596,6 +596,241 @@ calculateSellAmountExternal(options): Promise<AmountCalculationResult>
|
|
|
596
596
|
// Note: Pass `calculateAmountMode: 'local' | 'external'` to override SDK default mode
|
|
597
597
|
```
|
|
598
598
|
|
|
599
|
+
## Performance Optimization
|
|
600
|
+
|
|
601
|
+
### Reusing Pool Data to Avoid Redundant Network Calls
|
|
602
|
+
|
|
603
|
+
Methods that internally use `calculateBuyAmount`/`calculateSellAmount` now support optional `calculateAmountMode` and `currentSupply` parameters for performance optimization. This allows you to:
|
|
604
|
+
|
|
605
|
+
1. **Fetch pool details once** using `fetchPoolDetailsForCalculation`
|
|
606
|
+
2. **Reuse `currentSupply`** across multiple calculations
|
|
607
|
+
3. **Eliminate redundant network calls** with local mode calculations
|
|
608
|
+
4. **Get instant results** when real-time precision isn't required
|
|
609
|
+
|
|
610
|
+
### Supported Methods
|
|
611
|
+
|
|
612
|
+
The following methods accept optional performance parameters:
|
|
613
|
+
|
|
614
|
+
- `fetchLaunchpadTokenSpotPrice(options)` - Pass `calculateAmountMode` and/or `currentSupply`
|
|
615
|
+
- `calculateBuyAmountForGraduation(options)` - Pass `calculateAmountMode` and/or `currentSupply`
|
|
616
|
+
- `graduateToken(options)` - Pass `calculateAmountMode` and/or `currentSupply`
|
|
617
|
+
|
|
618
|
+
### Using CALCULATION_MODES Constant
|
|
619
|
+
|
|
620
|
+
```typescript
|
|
621
|
+
import { createLaunchpadSDK, CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
622
|
+
|
|
623
|
+
const sdk = createLaunchpadSDK({
|
|
624
|
+
wallet: 'your-private-key-or-mnemonic'
|
|
625
|
+
});
|
|
626
|
+
|
|
627
|
+
// Use type-safe calculation mode constants
|
|
628
|
+
console.log(CALCULATION_MODES.LOCAL); // 'local'
|
|
629
|
+
console.log(CALCULATION_MODES.EXTERNAL); // 'external'
|
|
630
|
+
```
|
|
631
|
+
|
|
632
|
+
### Basic Optimization Pattern
|
|
633
|
+
|
|
634
|
+
```typescript
|
|
635
|
+
import { createLaunchpadSDK, CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
636
|
+
|
|
637
|
+
const sdk = createLaunchpadSDK({
|
|
638
|
+
wallet: 'your-private-key-or-mnemonic'
|
|
639
|
+
});
|
|
640
|
+
|
|
641
|
+
const tokenName = 'tinyevil';
|
|
642
|
+
|
|
643
|
+
// ❌ WITHOUT OPTIMIZATION (3 network calls)
|
|
644
|
+
const spotPrice1 = await sdk.fetchLaunchpadTokenSpotPrice(tokenName);
|
|
645
|
+
// → Fetches pool details internally (call #1)
|
|
646
|
+
|
|
647
|
+
const graduation1 = await sdk.calculateBuyAmountForGraduation(tokenName);
|
|
648
|
+
// → Fetches pool details internally (call #2)
|
|
649
|
+
|
|
650
|
+
const graduationResult1 = await sdk.graduateToken({ tokenName });
|
|
651
|
+
// → Fetches pool details internally (call #3)
|
|
652
|
+
|
|
653
|
+
// ✅ WITH OPTIMIZATION (1 network call + instant local calculations)
|
|
654
|
+
// Step 1: Fetch pool details once
|
|
655
|
+
const poolDetails = await sdk.fetchPoolDetailsForCalculation(tokenName);
|
|
656
|
+
const currentSupply = poolDetails.currentSupply; // Pre-computed with full precision
|
|
657
|
+
|
|
658
|
+
// Step 2: Reuse currentSupply for instant local calculations
|
|
659
|
+
const spotPrice2 = await sdk.fetchLaunchpadTokenSpotPrice({
|
|
660
|
+
tokenName,
|
|
661
|
+
calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
662
|
+
currentSupply
|
|
663
|
+
});
|
|
664
|
+
// → Uses local bonding curve formulas (instant, no network call)
|
|
665
|
+
|
|
666
|
+
const graduation2 = await sdk.calculateBuyAmountForGraduation({
|
|
667
|
+
tokenName,
|
|
668
|
+
calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
669
|
+
currentSupply
|
|
670
|
+
});
|
|
671
|
+
// → Uses local calculation (instant, no network call)
|
|
672
|
+
|
|
673
|
+
// Step 3: Graduate with optimized calculation
|
|
674
|
+
const graduationResult2 = await sdk.graduateToken({
|
|
675
|
+
tokenName,
|
|
676
|
+
calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
677
|
+
currentSupply,
|
|
678
|
+
slippageToleranceFactor: 0.01
|
|
679
|
+
});
|
|
680
|
+
// → Skips redundant pool fetch, uses local calculation
|
|
681
|
+
```
|
|
682
|
+
|
|
683
|
+
### Performance Comparison
|
|
684
|
+
|
|
685
|
+
| Pattern | Network Calls | Speed | Use Case |
|
|
686
|
+
|---------|--------------|-------|----------|
|
|
687
|
+
| **Without Optimization** | 3 calls | ~600-900ms | One-off operations |
|
|
688
|
+
| **With Optimization** | 1 call | ~200ms | Batch operations, price discovery |
|
|
689
|
+
| **Reduction** | **66% fewer calls** | **~70% faster** | |
|
|
690
|
+
|
|
691
|
+
### Complete Optimization Example
|
|
692
|
+
|
|
693
|
+
```typescript
|
|
694
|
+
import { createLaunchpadSDK, CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
695
|
+
|
|
696
|
+
const sdk = createLaunchpadSDK({
|
|
697
|
+
wallet: 'your-private-key-or-mnemonic'
|
|
698
|
+
});
|
|
699
|
+
|
|
700
|
+
async function optimizedPoolAnalysis(tokenName: string) {
|
|
701
|
+
console.time('Optimized Analysis');
|
|
702
|
+
|
|
703
|
+
// 1. Fetch pool details once (only network call needed)
|
|
704
|
+
const poolDetails = await sdk.fetchPoolDetailsForCalculation(tokenName);
|
|
705
|
+
const {
|
|
706
|
+
currentSupply,
|
|
707
|
+
maxSupply,
|
|
708
|
+
reverseBondingCurveMinFeeFactor,
|
|
709
|
+
reverseBondingCurveMaxFeeFactor
|
|
710
|
+
} = poolDetails;
|
|
711
|
+
|
|
712
|
+
// 2. Get spot price with local calculation (instant)
|
|
713
|
+
const spotPrice = await sdk.fetchLaunchpadTokenSpotPrice({
|
|
714
|
+
tokenName,
|
|
715
|
+
calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
716
|
+
currentSupply
|
|
717
|
+
});
|
|
718
|
+
console.log(`Spot price: $${spotPrice.usdPrice.toFixed(6)}`);
|
|
719
|
+
|
|
720
|
+
// 3. Calculate graduation cost with local calculation (instant)
|
|
721
|
+
const graduationCost = await sdk.calculateBuyAmountForGraduation({
|
|
722
|
+
tokenName,
|
|
723
|
+
calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
724
|
+
currentSupply
|
|
725
|
+
});
|
|
726
|
+
console.log(`Graduation cost: ${graduationCost.amount} GALA`);
|
|
727
|
+
|
|
728
|
+
// 4. Simulate multiple buy scenarios (all instant)
|
|
729
|
+
const buyAmounts = ['10', '100', '1000'];
|
|
730
|
+
for (const amount of buyAmounts) {
|
|
731
|
+
const buyCalc = await sdk.calculateBuyAmount({
|
|
732
|
+
tokenName,
|
|
733
|
+
amount,
|
|
734
|
+
type: 'native',
|
|
735
|
+
mode: CALCULATION_MODES.LOCAL, // Can also use 'mode' alias
|
|
736
|
+
currentSupply
|
|
737
|
+
});
|
|
738
|
+
console.log(`Buying ${amount} GALA gets you: ${buyCalc.amount} tokens`);
|
|
739
|
+
}
|
|
740
|
+
|
|
741
|
+
// 5. Simulate multiple sell scenarios (all instant)
|
|
742
|
+
const sellAmounts = ['10', '100', '1000'];
|
|
743
|
+
for (const amount of sellAmounts) {
|
|
744
|
+
const sellCalc = await sdk.calculateSellAmountLocal({
|
|
745
|
+
tokenName,
|
|
746
|
+
amount,
|
|
747
|
+
type: 'native',
|
|
748
|
+
maxSupply,
|
|
749
|
+
reverseBondingCurveMinFeeFactor,
|
|
750
|
+
reverseBondingCurveMaxFeeFactor
|
|
751
|
+
});
|
|
752
|
+
console.log(`Selling ${amount} GALA worth gets you: ${sellCalc.amount} GALA`);
|
|
753
|
+
}
|
|
754
|
+
|
|
755
|
+
console.timeEnd('Optimized Analysis');
|
|
756
|
+
// Output: Optimized Analysis: ~200-300ms (vs ~2-3 seconds without optimization)
|
|
757
|
+
}
|
|
758
|
+
|
|
759
|
+
optimizedPoolAnalysis('tinyevil');
|
|
760
|
+
```
|
|
761
|
+
|
|
762
|
+
### When to Use Optimization
|
|
763
|
+
|
|
764
|
+
**✅ Use optimization when:**
|
|
765
|
+
- Performing multiple calculations on the same token
|
|
766
|
+
- Building price discovery tools or analytics dashboards
|
|
767
|
+
- Running simulations or backtests
|
|
768
|
+
- Creating trading bots with frequent calculations
|
|
769
|
+
- Displaying real-time price feeds (use local mode for smooth updates)
|
|
770
|
+
|
|
771
|
+
**❌ Skip optimization when:**
|
|
772
|
+
- Performing a single calculation
|
|
773
|
+
- Requiring absolute precision from GalaChain network
|
|
774
|
+
- Token supply changes frequently between calls
|
|
775
|
+
|
|
776
|
+
### Local vs External Calculations
|
|
777
|
+
|
|
778
|
+
```typescript
|
|
779
|
+
// Local mode (client-side, instant, <0.01% difference from external)
|
|
780
|
+
const localCalc = await sdk.calculateBuyAmount({
|
|
781
|
+
tokenName: 'tinyevil',
|
|
782
|
+
amount: '100',
|
|
783
|
+
type: 'native',
|
|
784
|
+
mode: CALCULATION_MODES.LOCAL,
|
|
785
|
+
currentSupply: poolDetails.currentSupply
|
|
786
|
+
});
|
|
787
|
+
|
|
788
|
+
// External mode (GalaChain network, real-time, slower)
|
|
789
|
+
const externalCalc = await sdk.calculateBuyAmount({
|
|
790
|
+
tokenName: 'tinyevil',
|
|
791
|
+
amount: '100',
|
|
792
|
+
type: 'native',
|
|
793
|
+
mode: CALCULATION_MODES.EXTERNAL // or omit to use SDK default
|
|
794
|
+
});
|
|
795
|
+
|
|
796
|
+
// Accuracy comparison
|
|
797
|
+
const difference = Math.abs(
|
|
798
|
+
parseFloat(localCalc.amount) - parseFloat(externalCalc.amount)
|
|
799
|
+
);
|
|
800
|
+
const percentDiff = (difference / parseFloat(externalCalc.amount)) * 100;
|
|
801
|
+
console.log(`Difference: ${percentDiff.toFixed(4)}%`); // Typically < 0.01%
|
|
802
|
+
```
|
|
803
|
+
|
|
804
|
+
### SDK Configuration for Default Calculation Mode
|
|
805
|
+
|
|
806
|
+
```typescript
|
|
807
|
+
import { createLaunchpadSDK, CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
808
|
+
|
|
809
|
+
// Configure SDK to use local calculations by default
|
|
810
|
+
const sdk = createLaunchpadSDK({
|
|
811
|
+
wallet: 'your-private-key-or-mnemonic',
|
|
812
|
+
config: {
|
|
813
|
+
calculateAmountMode: CALCULATION_MODES.LOCAL // Default to local mode
|
|
814
|
+
}
|
|
815
|
+
});
|
|
816
|
+
|
|
817
|
+
// All calculations will use local mode by default
|
|
818
|
+
const calc1 = await sdk.calculateBuyAmount({
|
|
819
|
+
tokenName: 'tinyevil',
|
|
820
|
+
amount: '100',
|
|
821
|
+
type: 'native'
|
|
822
|
+
// Uses LOCAL mode from SDK config
|
|
823
|
+
});
|
|
824
|
+
|
|
825
|
+
// Override per-call if needed
|
|
826
|
+
const calc2 = await sdk.calculateBuyAmount({
|
|
827
|
+
tokenName: 'tinyevil',
|
|
828
|
+
amount: '100',
|
|
829
|
+
type: 'native',
|
|
830
|
+
mode: CALCULATION_MODES.EXTERNAL // Override to external for this call
|
|
831
|
+
});
|
|
832
|
+
```
|
|
833
|
+
|
|
599
834
|
### **Trading Operations**
|
|
600
835
|
|
|
601
836
|
```typescript
|
package/dist/LaunchpadSDK.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { TransferGalaData, TransferTokenData } from './types/transfer.dto';
|
|
|
7
7
|
import { TokenLaunchResult, TradeResult } from './types/result.types';
|
|
8
8
|
import { WebSocketError, WebSocketTimeoutError, TransactionFailedError } from './utils/websocket-errors';
|
|
9
9
|
export { WebSocketError, WebSocketTimeoutError, TransactionFailedError, };
|
|
10
|
-
import { FetchCommentsOptions, PostCommentOptions, FetchVolumeDataOptions, FetchTradesOptions, CalculateBuyAmountOptions, CalculateSellAmountOptions, CalculateBuyAmountLocalOptions, CalculateSellAmountLocalOptions, BuyTokenOptions, SellTokenOptions, UploadImageByTokenNameOptions, FetchTokensHeldOptions, FetchTokensCreatedOptions, GraduateTokenOptions } from './types/options.dto';
|
|
10
|
+
import { FetchCommentsOptions, PostCommentOptions, FetchVolumeDataOptions, FetchTradesOptions, CalculateBuyAmountOptions, CalculateSellAmountOptions, CalculateBuyAmountLocalOptions, CalculateSellAmountLocalOptions, BuyTokenOptions, SellTokenOptions, UploadImageByTokenNameOptions, FetchTokensHeldOptions, FetchTokensCreatedOptions, GraduateTokenOptions, FetchLaunchpadTokenSpotPriceOptions, CalculateBuyAmountForGraduationOptions } from './types/options.dto';
|
|
11
11
|
/**
|
|
12
12
|
* Configuration for initializing the Launchpad SDK
|
|
13
13
|
*
|
|
@@ -376,21 +376,35 @@ export declare class LaunchpadSDK {
|
|
|
376
376
|
* Calculates the USD price of a launchpad token by determining how many tokens
|
|
377
377
|
* you get for 1 GALA and converting based on current GALA USD price.
|
|
378
378
|
*
|
|
379
|
-
*
|
|
379
|
+
* Performance optimization: Provide currentSupply to avoid fetching pool details twice.
|
|
380
|
+
*
|
|
381
|
+
* @param tokenNameOrOptions Token name string OR FetchLaunchpadTokenSpotPriceOptions object
|
|
380
382
|
* @returns Promise<TokenSpotPrice> Spot price with symbol and USD price
|
|
381
383
|
*
|
|
382
|
-
* @example
|
|
384
|
+
* @example Basic usage
|
|
383
385
|
* ```typescript
|
|
384
386
|
* const price = await sdk.fetchLaunchpadTokenSpotPrice('dragnrkti');
|
|
385
387
|
* console.log(`${price.symbol}: $${price.price.toFixed(6)}`);
|
|
386
388
|
* // Output: DRAGNRKTI: $0.000123
|
|
387
389
|
* ```
|
|
388
390
|
*
|
|
391
|
+
* @example Performance-optimized with reused pool details
|
|
392
|
+
* ```typescript
|
|
393
|
+
* import { CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
394
|
+
*
|
|
395
|
+
* const poolDetails = await sdk.fetchPoolDetailsForCalculation('anime');
|
|
396
|
+
* const price = await sdk.fetchLaunchpadTokenSpotPrice({
|
|
397
|
+
* tokenName: 'anime',
|
|
398
|
+
* calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
399
|
+
* currentSupply: poolDetails.currentSupply
|
|
400
|
+
* });
|
|
401
|
+
* ```
|
|
402
|
+
*
|
|
389
403
|
* @throws Error if token not found
|
|
390
404
|
* @throws Error if price calculation fails
|
|
391
405
|
* @throws Error if GALA price unavailable
|
|
392
406
|
*/
|
|
393
|
-
fetchLaunchpadTokenSpotPrice(
|
|
407
|
+
fetchLaunchpadTokenSpotPrice(tokenNameOrOptions: string | FetchLaunchpadTokenSpotPriceOptions): Promise<TokenSpotPrice>;
|
|
394
408
|
/**
|
|
395
409
|
* Fetch the current launchpad token launch fee
|
|
396
410
|
*
|
|
@@ -758,20 +772,66 @@ export declare class LaunchpadSDK {
|
|
|
758
772
|
* Convenience method that fetches pool details and calculates the exact
|
|
759
773
|
* cost to buy all remaining tokens. Returns standard AmountCalculationResult.
|
|
760
774
|
*
|
|
761
|
-
*
|
|
775
|
+
* Performance optimization: Provide currentSupply to avoid fetching pool details twice.
|
|
776
|
+
*
|
|
777
|
+
* @param tokenNameOrOptions Token name string OR CalculateBuyAmountForGraduationOptions object
|
|
762
778
|
* @returns Promise<AmountCalculationResult> Same result as calculateBuyAmount
|
|
763
779
|
* @throws ValidationError if token not found or already graduated
|
|
780
|
+
*
|
|
781
|
+
* @example Basic usage
|
|
782
|
+
* ```typescript
|
|
783
|
+
* const result = await sdk.calculateBuyAmountForGraduation('mytoken');
|
|
784
|
+
* console.log('Remaining tokens:', result.amount);
|
|
785
|
+
* console.log('GALA required:', result.totalCost);
|
|
786
|
+
* ```
|
|
787
|
+
*
|
|
788
|
+
* @example Performance-optimized with reused pool details
|
|
789
|
+
* ```typescript
|
|
790
|
+
* import { CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
791
|
+
*
|
|
792
|
+
* const poolDetails = await sdk.fetchPoolDetailsForCalculation('anime');
|
|
793
|
+
* const result = await sdk.calculateBuyAmountForGraduation({
|
|
794
|
+
* tokenName: 'anime',
|
|
795
|
+
* calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
796
|
+
* currentSupply: poolDetails.currentSupply
|
|
797
|
+
* });
|
|
798
|
+
* ```
|
|
764
799
|
*/
|
|
765
|
-
calculateBuyAmountForGraduation(
|
|
800
|
+
calculateBuyAmountForGraduation(tokenNameOrOptions: string | CalculateBuyAmountForGraduationOptions): Promise<import("./types/launchpad.dto").AmountCalculationResult>;
|
|
766
801
|
/**
|
|
767
802
|
* Graduate a token pool by buying all remaining tokens
|
|
768
803
|
*
|
|
769
804
|
* Convenience method that combines calculateBuyAmountForGraduation + buy
|
|
770
805
|
* to graduate a token in a single call with WebSocket confirmation.
|
|
771
806
|
*
|
|
807
|
+
* Performance optimization: Provide currentSupply to avoid fetching pool details twice.
|
|
808
|
+
*
|
|
772
809
|
* @param options Graduation options with tokenName and optional slippage protection
|
|
773
810
|
* @returns Promise<TradeResult> Transaction result from buying all remaining tokens
|
|
774
811
|
* @throws ValidationError if token already graduated or parameters invalid
|
|
812
|
+
*
|
|
813
|
+
* @example Basic usage
|
|
814
|
+
* ```typescript
|
|
815
|
+
* const result = await sdk.graduateToken({
|
|
816
|
+
* tokenName: 'mytoken',
|
|
817
|
+
* slippageToleranceFactor: 0.01
|
|
818
|
+
* });
|
|
819
|
+
* console.log('Graduation complete!');
|
|
820
|
+
* console.log('Total cost:', result.totalFees);
|
|
821
|
+
* ```
|
|
822
|
+
*
|
|
823
|
+
* @example Performance-optimized with reused pool details
|
|
824
|
+
* ```typescript
|
|
825
|
+
* import { CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
826
|
+
*
|
|
827
|
+
* const poolDetails = await sdk.fetchPoolDetailsForCalculation('anime');
|
|
828
|
+
* const result = await sdk.graduateToken({
|
|
829
|
+
* tokenName: 'anime',
|
|
830
|
+
* calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
831
|
+
* currentSupply: poolDetails.currentSupply,
|
|
832
|
+
* slippageToleranceFactor: 0.01
|
|
833
|
+
* });
|
|
834
|
+
* ```
|
|
775
835
|
*/
|
|
776
836
|
graduateToken(options: GraduateTokenOptions): Promise<TradeResult>;
|
|
777
837
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LaunchpadSDK.d.ts","sourceRoot":"","sources":["../src/LaunchpadSDK.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKhC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAYzE,OAAO,EAAwB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC1G,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EACL,iBAAiB,EACjB,WAAW,EAEZ,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAiBlC,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,sBAAsB,GACvB,CAAC;AACF,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,eAAe,EACf,gBAAgB,EAChB,6BAA6B,EAC7B,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"LaunchpadSDK.d.ts","sourceRoot":"","sources":["../src/LaunchpadSDK.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { Logger } from '../utils/Logger';
|
|
|
9
9
|
import { TokenResolverService } from '../services/TokenResolverService';
|
|
10
10
|
import { FetchPoolOptions, PoolsResult, AmountCalculationResult, CheckPoolOptions, GraphDataResult, TokenDistributionResult, LaunchTokenData, TokenBadgesResult, TokenSpotPrice } from '../types/launchpad.dto';
|
|
11
11
|
import { CalculatePreMintData } from '../types/trade.dto';
|
|
12
|
-
import { FetchVolumeDataOptions, CalculateBuyAmountOptions, CalculateSellAmountOptions, CalculateBuyAmountLocalOptions, CalculateSellAmountLocalOptions, HasTokenBadgeOptions, UploadImageByTokenNameOptions } from '../types/options.dto';
|
|
12
|
+
import { FetchVolumeDataOptions, CalculateBuyAmountOptions, CalculateSellAmountOptions, CalculateBuyAmountLocalOptions, CalculateSellAmountLocalOptions, HasTokenBadgeOptions, UploadImageByTokenNameOptions, FetchLaunchpadTokenSpotPriceOptions, CalculateBuyAmountForGraduationOptions } from '../types/options.dto';
|
|
13
13
|
/**
|
|
14
14
|
* Launchpad API controller for pool creation and management operations
|
|
15
15
|
*
|
|
@@ -516,20 +516,32 @@ export declare class LaunchpadAPI {
|
|
|
516
516
|
* Convenience method that fetches pool details and calculates the exact
|
|
517
517
|
* cost to buy all remaining tokens. Returns standard AmountCalculationResult.
|
|
518
518
|
*
|
|
519
|
-
*
|
|
519
|
+
* Performance optimization: Provide currentSupply to avoid fetching pool details twice.
|
|
520
|
+
*
|
|
521
|
+
* @param tokenNameOrOptions Token name string OR CalculateBuyAmountForGraduationOptions object
|
|
520
522
|
* @returns Promise<AmountCalculationResult> Same result as calculateBuyAmount
|
|
521
523
|
* @throws ValidationError if token not found or already graduated
|
|
522
524
|
*
|
|
523
|
-
* @example
|
|
525
|
+
* @example Legacy string usage
|
|
524
526
|
* ```typescript
|
|
525
|
-
* // Get graduation cost calculation
|
|
526
527
|
* const result = await sdk.launchpad.calculateBuyAmountForGraduation('mytoken');
|
|
527
528
|
* console.log('Remaining tokens:', result.amount);
|
|
528
529
|
* console.log('GALA required:', result.totalCost);
|
|
529
|
-
*
|
|
530
|
+
* ```
|
|
531
|
+
*
|
|
532
|
+
* @example Options object with performance optimization
|
|
533
|
+
* ```typescript
|
|
534
|
+
* import { CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
535
|
+
*
|
|
536
|
+
* const poolDetails = await sdk.fetchPoolDetailsForCalculation('anime');
|
|
537
|
+
* const result = await sdk.calculateBuyAmountForGraduation({
|
|
538
|
+
* tokenName: 'anime',
|
|
539
|
+
* calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
540
|
+
* currentSupply: poolDetails.currentSupply
|
|
541
|
+
* });
|
|
530
542
|
* ```
|
|
531
543
|
*/
|
|
532
|
-
calculateBuyAmountForGraduation(
|
|
544
|
+
calculateBuyAmountForGraduation(tokenNameOrOptions: string | CalculateBuyAmountForGraduationOptions): Promise<AmountCalculationResult>;
|
|
533
545
|
/**
|
|
534
546
|
* Creates a new token sale using the bundle backend
|
|
535
547
|
*
|
|
@@ -774,20 +786,31 @@ export declare class LaunchpadAPI {
|
|
|
774
786
|
* 2. Getting the current GALA price in USD
|
|
775
787
|
* 3. Computing: GALA_price_USD / tokens_per_GALA
|
|
776
788
|
*
|
|
777
|
-
* @param
|
|
789
|
+
* @param tokenNameOrOptions Token name string OR FetchLaunchpadTokenSpotPriceOptions object
|
|
778
790
|
* @returns Promise<TokenSpotPrice> Spot price with symbol and USD price
|
|
779
791
|
*
|
|
780
|
-
* @example
|
|
792
|
+
* @example Legacy string usage
|
|
781
793
|
* ```typescript
|
|
782
794
|
* const price = await launchpadAPI.fetchLaunchpadTokenSpotPrice('dragnrkti');
|
|
783
795
|
* console.log(`${price.symbol}: $${price.price.toFixed(6)}`);
|
|
784
|
-
*
|
|
796
|
+
* ```
|
|
797
|
+
*
|
|
798
|
+
* @example Options object with performance optimization
|
|
799
|
+
* ```typescript
|
|
800
|
+
* import { CALCULATION_MODES } from '@gala-chain/launchpad-sdk';
|
|
801
|
+
*
|
|
802
|
+
* const poolDetails = await sdk.fetchPoolDetailsForCalculation('anime');
|
|
803
|
+
* const price = await sdk.fetchLaunchpadTokenSpotPrice({
|
|
804
|
+
* tokenName: 'anime',
|
|
805
|
+
* calculateAmountMode: CALCULATION_MODES.LOCAL,
|
|
806
|
+
* currentSupply: poolDetails.currentSupply
|
|
807
|
+
* });
|
|
785
808
|
* ```
|
|
786
809
|
*
|
|
787
810
|
* @throws Error if token not found
|
|
788
811
|
* @throws Error if price calculation fails
|
|
789
812
|
* @throws Error if GALA price unavailable
|
|
790
813
|
*/
|
|
791
|
-
fetchLaunchpadTokenSpotPrice(
|
|
814
|
+
fetchLaunchpadTokenSpotPrice(tokenNameOrOptions: string | FetchLaunchpadTokenSpotPriceOptions): Promise<TokenSpotPrice>;
|
|
792
815
|
}
|
|
793
816
|
//# sourceMappingURL=LaunchpadAPI.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LaunchpadAPI.d.ts","sourceRoot":"","sources":["../../src/api/LaunchpadAPI.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAmBxE,OAAO,EAEL,gBAAgB,EAGhB,WAAW,EAEX,uBAAuB,EACvB,gBAAgB,EAIhB,eAAe,EAEf,uBAAuB,EACvB,eAAe,EAKf,iBAAiB,EAIjB,cAAc,EAEf,MAAM,wBAAwB,CAAC;AAIhC,OAAO,EACL,oBAAoB,EAIrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,8BAA8B,EAC9B,+BAA+B,EAC/B,oBAAoB,EACpB,6BAA6B,
|
|
1
|
+
{"version":3,"file":"LaunchpadAPI.d.ts","sourceRoot":"","sources":["../../src/api/LaunchpadAPI.ts"],"names":[],"mappings":"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"}
|