@gala-chain/launchpad-sdk 3.21.4 → 3.22.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/CHANGELOG.md +68 -0
- package/dist/LaunchpadSDK.d.ts +4 -2
- 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.esm.js +1 -1
- package/dist/index.js +1 -1
- package/dist/services/DexService.d.ts +28 -10
- package/dist/services/DexService.d.ts.map +1 -1
- package/dist/services/GalaChainService.d.ts +37 -1
- package/dist/services/GalaChainService.d.ts.map +1 -1
- package/dist/services/TokenMetadataCache.d.ts +44 -0
- package/dist/services/TokenMetadataCache.d.ts.map +1 -1
- package/dist/types/launchpad.dto.d.ts +32 -0
- package/dist/types/launchpad.dto.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,73 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.22.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- d5371ff: feat: Implement symbol caching in DexService and TokenMetadataCache for optimized spot
|
|
8
|
+
price queries
|
|
9
|
+
|
|
10
|
+
## Changes
|
|
11
|
+
- **TokenMetadataCache Extension**: Added tokenId-based caching methods (getByTokenId,
|
|
12
|
+
setByTokenId, hasByTokenId) to support caching immutable token symbols from DEX API metadata
|
|
13
|
+
- **DexService Symbol Caching**: Implemented cache-first pattern in \_fetchDexTokenSpotPrice() to
|
|
14
|
+
eliminate redundant `/v1/tokens` API calls on repeated spot price queries
|
|
15
|
+
- **LaunchpadSDK Integration**: Instantiated TokenMetadataCache and wired it through DexService
|
|
16
|
+
constructor for transparent symbol caching across all spot price operations
|
|
17
|
+
- **Performance**: First spot price query ~100-300ms (API call + cache), subsequent queries
|
|
18
|
+
~50-150ms (cache hit, ~50% faster)
|
|
19
|
+
- **Backward Compatibility**: Cache is optional (undefined cache parameter continues to work,
|
|
20
|
+
falling back to fallback symbol from tokenInstance.type)
|
|
21
|
+
|
|
22
|
+
## Implementation Details
|
|
23
|
+
|
|
24
|
+
### Cache Key Format
|
|
25
|
+
|
|
26
|
+
Token symbols cached using pipe-delimited format with `token:` prefix to distinguish from
|
|
27
|
+
tokenName entries:
|
|
28
|
+
- Example: `token:Token|Unit|GUSDC|eth:0x...`
|
|
29
|
+
|
|
30
|
+
### Symbol Immutability
|
|
31
|
+
|
|
32
|
+
Symbols are guaranteed immutable based on DEX API contract - cached symbols never change, enabling
|
|
33
|
+
simple caching without TTL
|
|
34
|
+
|
|
35
|
+
### Error Handling
|
|
36
|
+
|
|
37
|
+
Symbol fetch failures gracefully fall back to tokenInstance.type.toUpperCase() without affecting
|
|
38
|
+
cache or price calculation
|
|
39
|
+
|
|
40
|
+
## Test Coverage
|
|
41
|
+
- 9 new unit tests for TokenMetadataCache tokenId methods
|
|
42
|
+
- 8 new integration tests for DexService symbol caching
|
|
43
|
+
- All 1133 tests passing
|
|
44
|
+
- Focus on: cache hits/misses, multiple token handling, metadata merging, backward compatibility
|
|
45
|
+
|
|
46
|
+
### Patch Changes
|
|
47
|
+
|
|
48
|
+
- Replace DEX API /v1/tokens with GalaChain native FetchTokenClasses API for authoritative token
|
|
49
|
+
metadata
|
|
50
|
+
|
|
51
|
+
**Summary:**
|
|
52
|
+
- Migrated token details fetching from DEX API to GalaChain native API
|
|
53
|
+
- Fixes bug where GALA spot price returned symbol "NONE" instead of "GALA"
|
|
54
|
+
- Removes obsolete dexApiHttp parameter from DexService
|
|
55
|
+
- Improves token metadata accuracy by using blockchain source of truth
|
|
56
|
+
|
|
57
|
+
**Changes:**
|
|
58
|
+
- Added `fetchTokenClassFromChain()` method to GalaChainService for native token metadata queries
|
|
59
|
+
- Updated DexService to use GalaChainService instead of DEX API for token details
|
|
60
|
+
- Wired GalaChainService through LaunchpadSDK to DexService
|
|
61
|
+
- Updated all tests to use GalaChainService mocks instead of DEX API mocks
|
|
62
|
+
- Removed unused HttpClient import and type definitions from DexService
|
|
63
|
+
- Removed unused dexApiHttp parameter from DexService constructor
|
|
64
|
+
|
|
65
|
+
**Technical Details:**
|
|
66
|
+
- GalaChain API endpoint: `/api/asset/token-contract/FetchTokenClasses`
|
|
67
|
+
- Source of truth: GalaChain native blockchain API (includes all tokens: native and wrapped)
|
|
68
|
+
- Backward compatibility: All existing APIs remain unchanged
|
|
69
|
+
- Test coverage: All 1131 tests passing
|
|
70
|
+
|
|
3
71
|
## 3.21.4
|
|
4
72
|
|
|
5
73
|
### Patch Changes
|
package/dist/LaunchpadSDK.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Wallet } from 'ethers';
|
|
2
2
|
import { SDKConfig, AddressFormat, TokenClassKey, TokenId } from './types/common';
|
|
3
3
|
import { PoolDetailsData } from './types/trade.dto';
|
|
4
|
-
import { LaunchTokenData, TokenSpotPrice, FetchPoolsOptions, PoolsResult,
|
|
4
|
+
import { LaunchTokenData, TokenSpotPrice, FetchPoolsOptions, PoolsResult, GalaChainTokenDetails } from './types/launchpad.dto';
|
|
5
5
|
import { UpdateProfileData, UploadProfileImageOptions, FetchTokenBalanceOptions } from './types/user.dto';
|
|
6
6
|
import { TransferGalaData, TransferTokenData } from './types/transfer.dto';
|
|
7
7
|
import { TokenLaunchResult, TradeResult } from './types/result.types';
|
|
@@ -138,6 +138,7 @@ export declare class LaunchpadSDK {
|
|
|
138
138
|
private readonly auth;
|
|
139
139
|
private readonly http;
|
|
140
140
|
private readonly galaChainHttp;
|
|
141
|
+
private readonly galaChainPublicAxios;
|
|
141
142
|
private readonly bundleHttp;
|
|
142
143
|
private readonly dexApiHttp;
|
|
143
144
|
private readonly dexBackendHttp;
|
|
@@ -153,6 +154,7 @@ export declare class LaunchpadSDK {
|
|
|
153
154
|
private readonly bundleService;
|
|
154
155
|
private readonly websocketService;
|
|
155
156
|
private readonly priceHistoryService;
|
|
157
|
+
private readonly cache;
|
|
156
158
|
private readonly launchpadAPI;
|
|
157
159
|
constructor(config: LaunchpadSDKConfig);
|
|
158
160
|
/**
|
|
@@ -565,7 +567,7 @@ export declare class LaunchpadSDK {
|
|
|
565
567
|
* @throws {ValidationError} If tokenId format is invalid
|
|
566
568
|
* @throws {NetworkError} If API request fails or token not found
|
|
567
569
|
*/
|
|
568
|
-
fetchTokenDetails(tokenId: TokenId): Promise<
|
|
570
|
+
fetchTokenDetails(tokenId: TokenId): Promise<GalaChainTokenDetails>;
|
|
569
571
|
/**
|
|
570
572
|
* Fetch the current launchpad token launch fee
|
|
571
573
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LaunchpadSDK.d.ts","sourceRoot":"","sources":["../src/LaunchpadSDK.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LaunchpadSDK.d.ts","sourceRoot":"","sources":["../src/LaunchpadSDK.ts"],"names":[],"mappings":"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"}
|