@gala-chain/launchpad-sdk 4.0.0 → 4.0.1-beta.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/API.md +5 -5
- package/CHANGELOG.md +15 -15
- package/EXAMPLES.md +80 -2
- package/README.md +118 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.d.ts +37 -34
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +1 -1
- package/dist/{LaunchpadSDK.d.ts → src/LaunchpadSDK.d.ts} +899 -20
- package/dist/src/LaunchpadSDK.d.ts.map +1 -0
- package/dist/src/api/LaunchpadAPI.d.ts.map +1 -0
- package/dist/src/api/dto/BondingCurveDTOs.d.ts.map +1 -0
- package/dist/src/api/dto/LockTokenDto.d.ts +97 -0
- package/dist/src/api/dto/LockTokenDto.d.ts.map +1 -0
- package/dist/src/api/dto/TransferTokenDto.d.ts.map +1 -0
- package/dist/src/api/dto/UnlockTokenDto.d.ts +86 -0
- package/dist/src/api/dto/UnlockTokenDto.d.ts.map +1 -0
- package/dist/src/auth/SignatureAuth.d.ts.map +1 -0
- package/dist/src/auth/types.d.ts.map +1 -0
- package/dist/src/config/environments.d.ts.map +1 -0
- package/dist/src/constants/bondingCurve.d.ts.map +1 -0
- package/dist/src/constants/config.d.ts.map +1 -0
- package/dist/src/constants/counts.d.ts.map +1 -0
- package/dist/src/constants/decimals.d.ts.map +1 -0
- package/dist/src/constants/endpoints.d.ts.map +1 -0
- package/dist/src/constants/enums.d.ts.map +1 -0
- package/dist/src/constants/error-messages.d.ts.map +1 -0
- package/dist/src/constants/pagination.d.ts.map +1 -0
- package/dist/src/constants/query-fields.d.ts.map +1 -0
- package/dist/src/constants/version.d.ts.map +1 -0
- package/dist/{constants → src/constants}/version.generated.d.ts +1 -1
- package/dist/src/constants/version.generated.d.ts.map +1 -0
- package/dist/src/helpers/sdk.d.ts.map +1 -0
- package/dist/src/helpers/wallet.d.ts.map +1 -0
- package/dist/src/index.d.ts +51 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/polyfills/file-global.d.ts.map +1 -0
- package/dist/src/schemas/files.d.ts.map +1 -0
- package/dist/src/schemas/index.d.ts.map +1 -0
- package/dist/src/schemas/launchpad.d.ts.map +1 -0
- package/dist/src/schemas/pagination.d.ts.map +1 -0
- package/dist/src/schemas/primitives.d.ts.map +1 -0
- package/dist/src/schemas/trade.d.ts.map +1 -0
- package/dist/src/schemas/user.d.ts.map +1 -0
- package/dist/src/schemas/validators.d.ts.map +1 -0
- package/dist/src/services/BaseService.d.ts.map +1 -0
- package/dist/src/services/BundleService.d.ts.map +1 -0
- package/dist/src/services/CommentService.d.ts.map +1 -0
- package/dist/src/services/DexBackendClient.d.ts.map +1 -0
- package/dist/src/services/DexPoolService.d.ts.map +1 -0
- package/dist/src/services/DexQuoteService.d.ts.map +1 -0
- package/dist/{services → src/services}/DexService.d.ts +83 -9
- package/dist/src/services/DexService.d.ts.map +1 -0
- package/dist/src/services/FaucetService.d.ts.map +1 -0
- package/dist/{services → src/services}/GSwapService.d.ts +84 -12
- package/dist/src/services/GSwapService.d.ts.map +1 -0
- package/dist/{services → src/services}/GalaChainGatewayClient.d.ts +12 -3
- package/dist/src/services/GalaChainGatewayClient.d.ts.map +1 -0
- package/dist/{services → src/services}/GalaChainService.d.ts +73 -4
- package/dist/src/services/GalaChainService.d.ts.map +1 -0
- package/dist/src/services/ImageService.d.ts.map +1 -0
- package/dist/src/services/LaunchpadService.d.ts.map +1 -0
- package/dist/src/services/MultiPoolStateManager.d.ts +284 -0
- package/dist/src/services/MultiPoolStateManager.d.ts.map +1 -0
- package/dist/src/services/PoolCacheManager.d.ts +171 -0
- package/dist/src/services/PoolCacheManager.d.ts.map +1 -0
- package/dist/src/services/PoolService.d.ts.map +1 -0
- package/dist/src/services/PoolStateManager.d.ts.map +1 -0
- package/dist/{services → src/services}/PriceHistoryService.d.ts +5 -5
- package/dist/src/services/PriceHistoryService.d.ts.map +1 -0
- package/dist/src/services/SignatureService.d.ts.map +1 -0
- package/dist/src/services/SwapEventQueue.d.ts +123 -0
- package/dist/src/services/SwapEventQueue.d.ts.map +1 -0
- package/dist/src/services/TokenClassKeyService.d.ts.map +1 -0
- package/dist/{services → src/services}/TokenMetadataCache.d.ts +5 -5
- package/dist/src/services/TokenMetadataCache.d.ts.map +1 -0
- package/dist/{services → src/services}/TokenMetadataService.d.ts +3 -3
- package/dist/src/services/TokenMetadataService.d.ts.map +1 -0
- package/dist/src/services/TokenResolverService.d.ts.map +1 -0
- package/dist/src/services/TradeService.d.ts.map +1 -0
- package/dist/src/services/UserService.d.ts.map +1 -0
- package/dist/src/services/WebSocketManager.d.ts.map +1 -0
- package/dist/src/services/WebSocketService.d.ts.map +1 -0
- package/dist/src/services/__mocks__/logger.mock.d.ts.map +1 -0
- package/dist/{setup.d.ts.map → src/setup.d.ts.map} +1 -1
- package/dist/{types → src/types}/backend-responses.d.ts +17 -0
- package/dist/src/types/backend-responses.d.ts.map +1 -0
- package/dist/src/types/comment.dto.d.ts.map +1 -0
- package/dist/src/types/common.d.ts.map +1 -0
- package/dist/{types → src/types}/composite-pool.dto.d.ts +1 -1
- package/dist/src/types/composite-pool.dto.d.ts.map +1 -0
- package/dist/src/types/dex-pool.dto.d.ts.map +1 -0
- package/dist/src/types/dto.d.ts.map +1 -0
- package/dist/src/types/eip712-types.d.ts.map +1 -0
- package/dist/{types → src/types}/galachain-api.types.d.ts +18 -8
- package/dist/src/types/galachain-api.types.d.ts.map +1 -0
- package/dist/{types → src/types}/gswap-responses.types.d.ts +14 -14
- package/dist/src/types/gswap-responses.types.d.ts.map +1 -0
- package/dist/src/types/gswap.dto.d.ts.map +1 -0
- package/dist/{types → src/types}/launchpad.dto.d.ts +175 -0
- package/dist/src/types/launchpad.dto.d.ts.map +1 -0
- package/dist/src/types/launchpad.validation.d.ts.map +1 -0
- package/dist/src/types/liquidity-monitor.dto.d.ts +177 -0
- package/dist/src/types/liquidity-monitor.dto.d.ts.map +1 -0
- package/dist/src/types/lock.dto.d.ts +146 -0
- package/dist/src/types/lock.dto.d.ts.map +1 -0
- package/dist/src/types/options.dto.d.ts.map +1 -0
- package/dist/src/types/pool-state-delta.dto.d.ts.map +1 -0
- package/dist/src/types/pool-state-manager-config.dto.d.ts.map +1 -0
- package/dist/{types → src/types}/priceHistory.dto.d.ts +4 -4
- package/dist/src/types/priceHistory.dto.d.ts.map +1 -0
- package/dist/src/types/result.types.d.ts.map +1 -0
- package/dist/src/types/swap-monitor.dto.d.ts +256 -0
- package/dist/src/types/swap-monitor.dto.d.ts.map +1 -0
- package/dist/src/types/trade.dto.d.ts.map +1 -0
- package/dist/src/types/transfer.dto.d.ts.map +1 -0
- package/dist/src/types/user.dto.d.ts.map +1 -0
- package/dist/src/types/websocket-data.types.d.ts.map +1 -0
- package/dist/src/types/websocket.types.d.ts.map +1 -0
- package/dist/src/utils/LiquidityEventExtractor.d.ts +99 -0
- package/dist/src/utils/LiquidityEventExtractor.d.ts.map +1 -0
- package/dist/src/utils/Logger.d.ts.map +1 -0
- package/dist/src/utils/MonitoringMetrics.d.ts +152 -0
- package/dist/src/utils/MonitoringMetrics.d.ts.map +1 -0
- package/dist/src/utils/PoolKeyNormalizer.d.ts +135 -0
- package/dist/src/utils/PoolKeyNormalizer.d.ts.map +1 -0
- package/dist/{utils → src/utils}/SignatureHelper.d.ts +38 -0
- package/dist/src/utils/SignatureHelper.d.ts.map +1 -0
- package/dist/src/utils/SwapEventExtractor.d.ts +152 -0
- package/dist/src/utils/SwapEventExtractor.d.ts.map +1 -0
- package/dist/src/utils/adapters.d.ts.map +1 -0
- package/dist/src/utils/agent-config.d.ts.map +1 -0
- package/dist/{utils → src/utils}/auto-pagination.d.ts +1 -1
- package/dist/src/utils/auto-pagination.d.ts.map +1 -0
- package/dist/{utils → src/utils}/bignumber-helpers.d.ts +5 -1
- package/dist/src/utils/bignumber-helpers.d.ts.map +1 -0
- package/dist/src/utils/bignumber-pool-cache.d.ts.map +1 -0
- package/dist/src/utils/bondingCurveCalculations.d.ts.map +1 -0
- package/dist/src/utils/cacheWarmingHelpers.d.ts.map +1 -0
- package/dist/src/utils/composite-pool-converter.d.ts.map +1 -0
- package/dist/src/utils/date-utils.d.ts.map +1 -0
- package/dist/src/utils/error-factories.d.ts.map +1 -0
- package/dist/src/utils/error-utils.d.ts.map +1 -0
- package/dist/src/utils/errors.d.ts.map +1 -0
- package/dist/src/utils/http.d.ts.map +1 -0
- package/dist/src/utils/load-env.d.ts.map +1 -0
- package/dist/src/utils/multipart-helpers.d.ts.map +1 -0
- package/dist/{utils → src/utils}/multipart.d.ts +2 -2
- package/dist/src/utils/multipart.d.ts.map +1 -0
- package/dist/src/utils/number-utils.d.ts.map +1 -0
- package/dist/src/utils/pool-pair-parser.d.ts.map +1 -0
- package/dist/src/utils/pool-state-validator.d.ts.map +1 -0
- package/dist/src/utils/position-filters.d.ts.map +1 -0
- package/dist/src/utils/precision-math.d.ts.map +1 -0
- package/dist/{utils → src/utils}/query-params.d.ts +2 -2
- package/dist/src/utils/query-params.d.ts.map +1 -0
- package/dist/src/utils/response-handlers.d.ts.map +1 -0
- package/dist/src/utils/response-normalizers.d.ts.map +1 -0
- package/dist/src/utils/slippage-utils.d.ts.map +1 -0
- package/dist/src/utils/swap-delta-calculator.d.ts.map +1 -0
- package/dist/src/utils/tick-crossing-handler.d.ts.map +1 -0
- package/dist/{utils → src/utils}/token-format-converter.d.ts +8 -8
- package/dist/src/utils/token-format-converter.d.ts.map +1 -0
- package/dist/src/utils/token-parser.d.ts.map +1 -0
- package/dist/src/utils/tokenNormalizer.d.ts.map +1 -0
- package/dist/src/utils/trade-transformers.d.ts.map +1 -0
- package/dist/src/utils/transfer-validation.d.ts.map +1 -0
- package/dist/{utils → src/utils}/validation-helpers.d.ts +1 -1
- package/dist/src/utils/validation-helpers.d.ts.map +1 -0
- package/dist/src/utils/validation.d.ts.map +1 -0
- package/dist/src/utils/wallet.d.ts.map +1 -0
- package/dist/src/utils/websocket-errors.d.ts.map +1 -0
- package/dist/src/utils/websocket-validators.d.ts.map +1 -0
- package/package.json +39 -6
- package/dist/LaunchpadSDK.d.ts.map +0 -1
- package/dist/api/LaunchpadAPI.d.ts.map +0 -1
- package/dist/api/dto/BondingCurveDTOs.d.ts.map +0 -1
- package/dist/api/dto/TransferTokenDto.d.ts.map +0 -1
- package/dist/auth/SignatureAuth.d.ts.map +0 -1
- package/dist/auth/types.d.ts.map +0 -1
- package/dist/config/environments.d.ts.map +0 -1
- package/dist/constants/bondingCurve.d.ts.map +0 -1
- package/dist/constants/config.d.ts.map +0 -1
- package/dist/constants/counts.d.ts.map +0 -1
- package/dist/constants/decimals.d.ts.map +0 -1
- package/dist/constants/endpoints.d.ts.map +0 -1
- package/dist/constants/enums.d.ts.map +0 -1
- package/dist/constants/error-messages.d.ts.map +0 -1
- package/dist/constants/pagination.d.ts.map +0 -1
- package/dist/constants/query-fields.d.ts.map +0 -1
- package/dist/constants/version.d.ts.map +0 -1
- package/dist/constants/version.generated.d.ts.map +0 -1
- package/dist/helpers/sdk.d.ts.map +0 -1
- package/dist/helpers/wallet.d.ts.map +0 -1
- package/dist/polyfills/file-global.d.ts.map +0 -1
- package/dist/schemas/files.d.ts.map +0 -1
- package/dist/schemas/index.d.ts.map +0 -1
- package/dist/schemas/launchpad.d.ts.map +0 -1
- package/dist/schemas/pagination.d.ts.map +0 -1
- package/dist/schemas/primitives.d.ts.map +0 -1
- package/dist/schemas/trade.d.ts.map +0 -1
- package/dist/schemas/user.d.ts.map +0 -1
- package/dist/schemas/validators.d.ts.map +0 -1
- package/dist/services/BaseService.d.ts.map +0 -1
- package/dist/services/BundleService.d.ts.map +0 -1
- package/dist/services/CommentService.d.ts.map +0 -1
- package/dist/services/DexBackendClient.d.ts.map +0 -1
- package/dist/services/DexPoolService.d.ts.map +0 -1
- package/dist/services/DexQuoteService.d.ts.map +0 -1
- package/dist/services/DexService.d.ts.map +0 -1
- package/dist/services/FaucetService.d.ts.map +0 -1
- package/dist/services/GSwapService.d.ts.map +0 -1
- package/dist/services/GalaChainGatewayClient.d.ts.map +0 -1
- package/dist/services/GalaChainService.d.ts.map +0 -1
- package/dist/services/ImageService.d.ts.map +0 -1
- package/dist/services/LaunchpadService.d.ts.map +0 -1
- package/dist/services/PoolService.d.ts.map +0 -1
- package/dist/services/PoolStateManager.d.ts.map +0 -1
- package/dist/services/PriceHistoryService.d.ts.map +0 -1
- package/dist/services/SignatureService.d.ts.map +0 -1
- package/dist/services/TokenClassKeyService.d.ts.map +0 -1
- package/dist/services/TokenMetadataCache.d.ts.map +0 -1
- package/dist/services/TokenMetadataService.d.ts.map +0 -1
- package/dist/services/TokenResolverService.d.ts.map +0 -1
- package/dist/services/TradeService.d.ts.map +0 -1
- package/dist/services/UserService.d.ts.map +0 -1
- package/dist/services/WebSocketManager.d.ts.map +0 -1
- package/dist/services/WebSocketService.d.ts.map +0 -1
- package/dist/services/__mocks__/logger.mock.d.ts.map +0 -1
- package/dist/types/backend-responses.d.ts.map +0 -1
- package/dist/types/comment.dto.d.ts.map +0 -1
- package/dist/types/common.d.ts.map +0 -1
- package/dist/types/composite-pool.dto.d.ts.map +0 -1
- package/dist/types/dex-pool.dto.d.ts.map +0 -1
- package/dist/types/dto.d.ts.map +0 -1
- package/dist/types/eip712-types.d.ts.map +0 -1
- package/dist/types/galachain-api.types.d.ts.map +0 -1
- package/dist/types/gswap-responses.types.d.ts.map +0 -1
- package/dist/types/gswap.dto.d.ts.map +0 -1
- package/dist/types/launchpad.dto.d.ts.map +0 -1
- package/dist/types/launchpad.validation.d.ts.map +0 -1
- package/dist/types/options.dto.d.ts.map +0 -1
- package/dist/types/pool-state-delta.dto.d.ts.map +0 -1
- package/dist/types/pool-state-manager-config.dto.d.ts.map +0 -1
- package/dist/types/priceHistory.dto.d.ts.map +0 -1
- package/dist/types/result.types.d.ts.map +0 -1
- package/dist/types/trade.dto.d.ts.map +0 -1
- package/dist/types/transfer.dto.d.ts.map +0 -1
- package/dist/types/user.dto.d.ts.map +0 -1
- package/dist/types/websocket-data.types.d.ts.map +0 -1
- package/dist/types/websocket.types.d.ts.map +0 -1
- package/dist/utils/Logger.d.ts.map +0 -1
- package/dist/utils/SignatureHelper.d.ts.map +0 -1
- package/dist/utils/adapters.d.ts.map +0 -1
- package/dist/utils/agent-config.d.ts.map +0 -1
- package/dist/utils/auto-pagination.d.ts.map +0 -1
- package/dist/utils/bignumber-helpers.d.ts.map +0 -1
- package/dist/utils/bignumber-pool-cache.d.ts.map +0 -1
- package/dist/utils/bondingCurveCalculations.d.ts.map +0 -1
- package/dist/utils/cacheWarmingHelpers.d.ts.map +0 -1
- package/dist/utils/composite-pool-converter.d.ts.map +0 -1
- package/dist/utils/date-utils.d.ts.map +0 -1
- package/dist/utils/error-factories.d.ts.map +0 -1
- package/dist/utils/error-utils.d.ts.map +0 -1
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/http.d.ts.map +0 -1
- package/dist/utils/load-env.d.ts.map +0 -1
- package/dist/utils/multipart-helpers.d.ts.map +0 -1
- package/dist/utils/multipart.d.ts.map +0 -1
- package/dist/utils/number-utils.d.ts.map +0 -1
- package/dist/utils/pool-pair-parser.d.ts.map +0 -1
- package/dist/utils/pool-state-validator.d.ts.map +0 -1
- package/dist/utils/position-filters.d.ts.map +0 -1
- package/dist/utils/precision-math.d.ts.map +0 -1
- package/dist/utils/query-params.d.ts.map +0 -1
- package/dist/utils/response-handlers.d.ts.map +0 -1
- package/dist/utils/response-normalizers.d.ts.map +0 -1
- package/dist/utils/slippage-utils.d.ts.map +0 -1
- package/dist/utils/swap-delta-calculator.d.ts.map +0 -1
- package/dist/utils/tick-crossing-handler.d.ts.map +0 -1
- package/dist/utils/token-format-converter.d.ts.map +0 -1
- package/dist/utils/token-parser.d.ts.map +0 -1
- package/dist/utils/tokenNormalizer.d.ts.map +0 -1
- package/dist/utils/trade-transformers.d.ts.map +0 -1
- package/dist/utils/transfer-validation.d.ts.map +0 -1
- package/dist/utils/validation-helpers.d.ts.map +0 -1
- package/dist/utils/validation.d.ts.map +0 -1
- package/dist/utils/wallet.d.ts.map +0 -1
- package/dist/utils/websocket-errors.d.ts.map +0 -1
- package/dist/utils/websocket-validators.d.ts.map +0 -1
- /package/dist/{api → src/api}/LaunchpadAPI.d.ts +0 -0
- /package/dist/{api → src/api}/dto/BondingCurveDTOs.d.ts +0 -0
- /package/dist/{api → src/api}/dto/TransferTokenDto.d.ts +0 -0
- /package/dist/{auth → src/auth}/SignatureAuth.d.ts +0 -0
- /package/dist/{auth → src/auth}/types.d.ts +0 -0
- /package/dist/{config → src/config}/environments.d.ts +0 -0
- /package/dist/{constants → src/constants}/bondingCurve.d.ts +0 -0
- /package/dist/{constants → src/constants}/config.d.ts +0 -0
- /package/dist/{constants → src/constants}/counts.d.ts +0 -0
- /package/dist/{constants → src/constants}/decimals.d.ts +0 -0
- /package/dist/{constants → src/constants}/endpoints.d.ts +0 -0
- /package/dist/{constants → src/constants}/enums.d.ts +0 -0
- /package/dist/{constants → src/constants}/error-messages.d.ts +0 -0
- /package/dist/{constants → src/constants}/pagination.d.ts +0 -0
- /package/dist/{constants → src/constants}/query-fields.d.ts +0 -0
- /package/dist/{constants → src/constants}/version.d.ts +0 -0
- /package/dist/{helpers → src/helpers}/sdk.d.ts +0 -0
- /package/dist/{helpers → src/helpers}/wallet.d.ts +0 -0
- /package/dist/{polyfills → src/polyfills}/file-global.d.ts +0 -0
- /package/dist/{schemas → src/schemas}/files.d.ts +0 -0
- /package/dist/{schemas → src/schemas}/index.d.ts +0 -0
- /package/dist/{schemas → src/schemas}/launchpad.d.ts +0 -0
- /package/dist/{schemas → src/schemas}/pagination.d.ts +0 -0
- /package/dist/{schemas → src/schemas}/primitives.d.ts +0 -0
- /package/dist/{schemas → src/schemas}/trade.d.ts +0 -0
- /package/dist/{schemas → src/schemas}/user.d.ts +0 -0
- /package/dist/{schemas → src/schemas}/validators.d.ts +0 -0
- /package/dist/{services → src/services}/BaseService.d.ts +0 -0
- /package/dist/{services → src/services}/BundleService.d.ts +0 -0
- /package/dist/{services → src/services}/CommentService.d.ts +0 -0
- /package/dist/{services → src/services}/DexBackendClient.d.ts +0 -0
- /package/dist/{services → src/services}/DexPoolService.d.ts +0 -0
- /package/dist/{services → src/services}/DexQuoteService.d.ts +0 -0
- /package/dist/{services → src/services}/FaucetService.d.ts +0 -0
- /package/dist/{services → src/services}/ImageService.d.ts +0 -0
- /package/dist/{services → src/services}/LaunchpadService.d.ts +0 -0
- /package/dist/{services → src/services}/PoolService.d.ts +0 -0
- /package/dist/{services → src/services}/PoolStateManager.d.ts +0 -0
- /package/dist/{services → src/services}/SignatureService.d.ts +0 -0
- /package/dist/{services → src/services}/TokenClassKeyService.d.ts +0 -0
- /package/dist/{services → src/services}/TokenResolverService.d.ts +0 -0
- /package/dist/{services → src/services}/TradeService.d.ts +0 -0
- /package/dist/{services → src/services}/UserService.d.ts +0 -0
- /package/dist/{services → src/services}/WebSocketManager.d.ts +0 -0
- /package/dist/{services → src/services}/WebSocketService.d.ts +0 -0
- /package/dist/{services → src/services}/__mocks__/logger.mock.d.ts +0 -0
- /package/dist/{setup.d.ts → src/setup.d.ts} +0 -0
- /package/dist/{types → src/types}/comment.dto.d.ts +0 -0
- /package/dist/{types → src/types}/common.d.ts +0 -0
- /package/dist/{types → src/types}/dex-pool.dto.d.ts +0 -0
- /package/dist/{types → src/types}/dto.d.ts +0 -0
- /package/dist/{types → src/types}/eip712-types.d.ts +0 -0
- /package/dist/{types → src/types}/gswap.dto.d.ts +0 -0
- /package/dist/{types → src/types}/launchpad.validation.d.ts +0 -0
- /package/dist/{types → src/types}/options.dto.d.ts +0 -0
- /package/dist/{types → src/types}/pool-state-delta.dto.d.ts +0 -0
- /package/dist/{types → src/types}/pool-state-manager-config.dto.d.ts +0 -0
- /package/dist/{types → src/types}/result.types.d.ts +0 -0
- /package/dist/{types → src/types}/trade.dto.d.ts +0 -0
- /package/dist/{types → src/types}/transfer.dto.d.ts +0 -0
- /package/dist/{types → src/types}/user.dto.d.ts +0 -0
- /package/dist/{types → src/types}/websocket-data.types.d.ts +0 -0
- /package/dist/{types → src/types}/websocket.types.d.ts +0 -0
- /package/dist/{utils → src/utils}/Logger.d.ts +0 -0
- /package/dist/{utils → src/utils}/adapters.d.ts +0 -0
- /package/dist/{utils → src/utils}/agent-config.d.ts +0 -0
- /package/dist/{utils → src/utils}/bignumber-pool-cache.d.ts +0 -0
- /package/dist/{utils → src/utils}/bondingCurveCalculations.d.ts +0 -0
- /package/dist/{utils → src/utils}/cacheWarmingHelpers.d.ts +0 -0
- /package/dist/{utils → src/utils}/composite-pool-converter.d.ts +0 -0
- /package/dist/{utils → src/utils}/date-utils.d.ts +0 -0
- /package/dist/{utils → src/utils}/error-factories.d.ts +0 -0
- /package/dist/{utils → src/utils}/error-utils.d.ts +0 -0
- /package/dist/{utils → src/utils}/errors.d.ts +0 -0
- /package/dist/{utils → src/utils}/http.d.ts +0 -0
- /package/dist/{utils → src/utils}/load-env.d.ts +0 -0
- /package/dist/{utils → src/utils}/multipart-helpers.d.ts +0 -0
- /package/dist/{utils → src/utils}/number-utils.d.ts +0 -0
- /package/dist/{utils → src/utils}/pool-pair-parser.d.ts +0 -0
- /package/dist/{utils → src/utils}/pool-state-validator.d.ts +0 -0
- /package/dist/{utils → src/utils}/position-filters.d.ts +0 -0
- /package/dist/{utils → src/utils}/precision-math.d.ts +0 -0
- /package/dist/{utils → src/utils}/response-handlers.d.ts +0 -0
- /package/dist/{utils → src/utils}/response-normalizers.d.ts +0 -0
- /package/dist/{utils → src/utils}/slippage-utils.d.ts +0 -0
- /package/dist/{utils → src/utils}/swap-delta-calculator.d.ts +0 -0
- /package/dist/{utils → src/utils}/tick-crossing-handler.d.ts +0 -0
- /package/dist/{utils → src/utils}/token-parser.d.ts +0 -0
- /package/dist/{utils → src/utils}/tokenNormalizer.d.ts +0 -0
- /package/dist/{utils → src/utils}/trade-transformers.d.ts +0 -0
- /package/dist/{utils → src/utils}/transfer-validation.d.ts +0 -0
- /package/dist/{utils → src/utils}/validation.d.ts +0 -0
- /package/dist/{utils → src/utils}/wallet.d.ts +0 -0
- /package/dist/{utils → src/utils}/websocket-errors.d.ts +0 -0
- /package/dist/{utils → src/utils}/websocket-validators.d.ts +0 -0
package/API.md
CHANGED
|
@@ -1003,9 +1003,9 @@ Promise<Array<{
|
|
|
1003
1003
|
// Query single token
|
|
1004
1004
|
const supplies = await sdk.fetchTokenClassesWithSupply([
|
|
1005
1005
|
{
|
|
1006
|
-
collection: '
|
|
1006
|
+
collection: 'GALA',
|
|
1007
1007
|
category: 'Unit',
|
|
1008
|
-
type: '
|
|
1008
|
+
type: 'none',
|
|
1009
1009
|
additionalKey: 'none'
|
|
1010
1010
|
}
|
|
1011
1011
|
]);
|
|
@@ -1016,8 +1016,8 @@ console.log(`GALA Burned: ${supplies[0].totalBurned}`);
|
|
|
1016
1016
|
|
|
1017
1017
|
// Query multiple tokens in one call
|
|
1018
1018
|
const multiSupplies = await sdk.fetchTokenClassesWithSupply([
|
|
1019
|
-
{ collection: '
|
|
1020
|
-
{ collection: '
|
|
1019
|
+
{ collection: 'GALA', category: 'Unit', type: 'none', additionalKey: 'none' },
|
|
1020
|
+
{ collection: 'GUSDC', category: 'Unit', type: 'none', additionalKey: 'none' }
|
|
1021
1021
|
]);
|
|
1022
1022
|
|
|
1023
1023
|
// Analyze supply metrics
|
|
@@ -1288,7 +1288,7 @@ tokenId: string | {
|
|
|
1288
1288
|
|
|
1289
1289
|
**Example:**
|
|
1290
1290
|
```typescript
|
|
1291
|
-
const details = await sdk.fetchTokenDetails('
|
|
1291
|
+
const details = await sdk.fetchTokenDetails('GUSDC|Unit|none|eth:0x...');
|
|
1292
1292
|
|
|
1293
1293
|
if (details.verified && details.tradingEnabled) {
|
|
1294
1294
|
console.log(`${details.symbol}: ${details.name}`);
|
package/CHANGELOG.md
CHANGED
|
@@ -4,24 +4,24 @@
|
|
|
4
4
|
|
|
5
5
|
### BREAKING CHANGES
|
|
6
6
|
|
|
7
|
-
- **`fetchLaunchpadTokenSpotPrice()` method
|
|
7
|
+
- **`fetchLaunchpadTokenSpotPrice()` method DEPRECATED**
|
|
8
8
|
- **Deprecated**: v3.22.7
|
|
9
|
-
- **
|
|
9
|
+
- **Status**: Still functional in v4.0.0, will be removed in v5.0.0
|
|
10
10
|
- **Replacement**: `fetchTokenPrice()` with smart routing (v3.22.7+)
|
|
11
11
|
- **Why**: Unified pricing interface for both launchpad and DEX tokens. Single method handles all price queries with automatic routing.
|
|
12
|
-
- **Impact**:
|
|
12
|
+
- **Impact**: Update your code to use `fetchTokenPrice()` before v5.0.0
|
|
13
13
|
|
|
14
14
|
**Migration Path:**
|
|
15
15
|
```typescript
|
|
16
|
-
//
|
|
16
|
+
// ⚠️ DEPRECATED in v4.0.0 - Still works but will be removed in v5.0.0
|
|
17
17
|
const price = await sdk.fetchLaunchpadTokenSpotPrice('anime');
|
|
18
18
|
|
|
19
|
-
// ✅
|
|
19
|
+
// ✅ RECOMMENDED (v4.0.0+)
|
|
20
20
|
const price = await sdk.fetchTokenPrice({ tokenName: 'anime' });
|
|
21
21
|
|
|
22
22
|
// Also supports tokenId format for DEX tokens
|
|
23
23
|
const priceById = await sdk.fetchTokenPrice({
|
|
24
|
-
tokenId: 'Token|Unit|
|
|
24
|
+
tokenId: 'Token|Unit|BENE|none'
|
|
25
25
|
});
|
|
26
26
|
```
|
|
27
27
|
|
|
@@ -599,7 +599,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
599
599
|
|
|
600
600
|
Token symbols cached using pipe-delimited format with `token:` prefix to distinguish from
|
|
601
601
|
tokenName entries:
|
|
602
|
-
- Example: `token:
|
|
602
|
+
- Example: `token:GUSDC|Unit|none|eth:0x...`
|
|
603
603
|
|
|
604
604
|
### Symbol Immutability
|
|
605
605
|
|
|
@@ -914,7 +914,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
914
914
|
- Comprehensive unit tests (14 tests covering success/error/edge cases)
|
|
915
915
|
|
|
916
916
|
**Features:**
|
|
917
|
-
- Flexible Token ID support: String format ('
|
|
917
|
+
- Flexible Token ID support: String format ('GUSDC|Unit|none|eth:0x...') or object format
|
|
918
918
|
- Comprehensive metadata: Returns symbol, name, decimals, image, verification status, network info
|
|
919
919
|
- DEX API Integration: Queries /v1/tokens endpoint with URL-encoded token class keys
|
|
920
920
|
- Proper error handling: Validates token existence and format
|
|
@@ -970,7 +970,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
970
970
|
**Format 1: Standard (collection="Token")**
|
|
971
971
|
|
|
972
972
|
```
|
|
973
|
-
Token|Unit|
|
|
973
|
+
Token|Unit|BENE|none → GALA$Unit$none$none
|
|
974
974
|
Token|Unit|SILK|none → SILK$Unit$none$none
|
|
975
975
|
```
|
|
976
976
|
|
|
@@ -1024,7 +1024,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
1024
1024
|
✅ String format: `Token|Unit|{TOKEN_NAME}|{additionalKey}`
|
|
1025
1025
|
|
|
1026
1026
|
```typescript
|
|
1027
|
-
sdk.fetchPriceHistory({ tokenId: 'Token|Unit|
|
|
1027
|
+
sdk.fetchPriceHistory({ tokenId: 'Token|Unit|BENE|none' });
|
|
1028
1028
|
sdk.fetchPriceHistory({ tokenId: 'Token|Unit|SILK|none' });
|
|
1029
1029
|
```
|
|
1030
1030
|
|
|
@@ -1050,7 +1050,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
1050
1050
|
|
|
1051
1051
|
```
|
|
1052
1052
|
Invalid tokenId format for price history. Expected format: "Token|Unit|{TOKEN_NAME}|{additionalKey}"
|
|
1053
|
-
(e.g., "Token|Unit|
|
|
1053
|
+
(e.g., "Token|Unit|BENE|none"). Received: "GALA|Unit|none|none".
|
|
1054
1054
|
The token name must be in the third field (type), not the first field (collection).
|
|
1055
1055
|
```
|
|
1056
1056
|
|
|
@@ -1074,7 +1074,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
1074
1074
|
|
|
1075
1075
|
The DEX Backend API uses a different token format than GalaChain:
|
|
1076
1076
|
- API format: `tokenName$Unit$none$none` (e.g., `GALA$Unit$none$none`)
|
|
1077
|
-
- SDK format: `collection|category|type|additionalKey` (e.g., `Token|Unit|
|
|
1077
|
+
- SDK format: `collection|category|type|additionalKey` (e.g., `Token|Unit|BENE|none`)
|
|
1078
1078
|
|
|
1079
1079
|
### Changes
|
|
1080
1080
|
|
|
@@ -1092,7 +1092,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
1092
1092
|
### Before
|
|
1093
1093
|
|
|
1094
1094
|
```typescript
|
|
1095
|
-
// Input: Token|Unit|
|
|
1095
|
+
// Input: Token|Unit|BENE|none
|
|
1096
1096
|
// Converted to: Token$Unit$GALA$none (WRONG - API expected GALA$Unit$none$none)
|
|
1097
1097
|
// Result: Empty response, no historical data
|
|
1098
1098
|
```
|
|
@@ -1100,7 +1100,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
1100
1100
|
### After
|
|
1101
1101
|
|
|
1102
1102
|
```typescript
|
|
1103
|
-
// Input: Token|Unit|
|
|
1103
|
+
// Input: Token|Unit|BENE|none
|
|
1104
1104
|
// Converted to: GALA$Unit$none$none (CORRECT)
|
|
1105
1105
|
// Result: Returns all 30,862 GALA price snapshots
|
|
1106
1106
|
```
|
|
@@ -1118,7 +1118,7 @@ Co-Authored-By: Claude <noreply@anthropic.com>
|
|
|
1118
1118
|
|
|
1119
1119
|
### SDK Changes (@gala-chain/launchpad-sdk)
|
|
1120
1120
|
- **New**: Added `tokenFormatConverter` utility (`src/utils/tokenFormatConverter.ts`)
|
|
1121
|
-
- Convert between pipe-delimited (`
|
|
1121
|
+
- Convert between pipe-delimited (`GUSDC|Unit|none|eth:...`) and dollar-delimited token formats
|
|
1122
1122
|
- Convert sort order from SDK format (uppercase) to API format (lowercase)
|
|
1123
1123
|
- **Updated**: `environments.ts` - Added separate `dexBackendBaseUrl` configuration for DEX
|
|
1124
1124
|
Backend service
|
package/EXAMPLES.md
CHANGED
|
@@ -12,6 +12,7 @@ Practical code examples for common SDK operations organized by category. For com
|
|
|
12
12
|
- [Liquidity Position Management](#liquidity-position-management)
|
|
13
13
|
- [Bonding Curve Trading](#bonding-curve-trading)
|
|
14
14
|
- [DEX Trading](#dex-trading)
|
|
15
|
+
- [DEX Leaderboard & Volume Analytics](#dex-leaderboard--volume-analytics)
|
|
15
16
|
- [Fee Generation & Collection](#fee-generation--collection)
|
|
16
17
|
- [Real-Time Monitoring](#real-time-monitoring)
|
|
17
18
|
- [Utilities](#utilities)
|
|
@@ -503,6 +504,83 @@ pools.pools.forEach(pool => {
|
|
|
503
504
|
|
|
504
505
|
---
|
|
505
506
|
|
|
507
|
+
## DEX Leaderboard & Volume Analytics
|
|
508
|
+
|
|
509
|
+
Competitive DEX leaderboard system with achievement tracking and platform-wide volume metrics.
|
|
510
|
+
|
|
511
|
+
### Fetch All Seasons
|
|
512
|
+
|
|
513
|
+
```typescript
|
|
514
|
+
const sdk = createLaunchpadSDK({ environment: 'production' });
|
|
515
|
+
|
|
516
|
+
// Get all available competitive seasons
|
|
517
|
+
const seasons = await sdk.fetchAllDexSeasons();
|
|
518
|
+
|
|
519
|
+
console.log(`Total seasons: ${seasons.length}`);
|
|
520
|
+
seasons.forEach(season => {
|
|
521
|
+
const days = Math.ceil((new Date(season.end).getTime() - new Date(season.start).getTime()) / (1000 * 60 * 60 * 24));
|
|
522
|
+
console.log(`${season.name} (ID: ${season.id}): ${days} days`);
|
|
523
|
+
});
|
|
524
|
+
```
|
|
525
|
+
|
|
526
|
+
### Get Current Season & Leaderboard
|
|
527
|
+
|
|
528
|
+
```typescript
|
|
529
|
+
// Get current active season
|
|
530
|
+
const currentSeason = await sdk.fetchCurrentDexSeason();
|
|
531
|
+
console.log(`Active: ${currentSeason.name}`);
|
|
532
|
+
|
|
533
|
+
// Get current season leaderboard (top 10)
|
|
534
|
+
const leaderboard = await sdk.fetchCurrentDexLeaderboard({ limit: 10 });
|
|
535
|
+
|
|
536
|
+
console.log(`🏆 Top Traders (${currentSeason.name}):`);
|
|
537
|
+
leaderboard.rankings.forEach(entry => {
|
|
538
|
+
const titles = entry.masteryTitles.map(t => t.name).join(', ');
|
|
539
|
+
console.log(`${entry.rank}. ${entry.wallet.slice(0, 12)}...`);
|
|
540
|
+
console.log(` XP: ${entry.totalXp} | Distribution: ${entry.distributionPercent}%`);
|
|
541
|
+
console.log(` Trading: ${entry.tradingXp} | Liquidity: ${entry.liquidityXp}`);
|
|
542
|
+
if (titles) console.log(` Achievements: ${titles}`);
|
|
543
|
+
});
|
|
544
|
+
```
|
|
545
|
+
|
|
546
|
+
### Query Historic Season Leaderboard
|
|
547
|
+
|
|
548
|
+
```typescript
|
|
549
|
+
// Get leaderboard from a specific season (e.g., Season 1, ID=4)
|
|
550
|
+
const historicLeaderboard = await sdk.fetchDexLeaderboardBySeasonId(4, { limit: 5 });
|
|
551
|
+
|
|
552
|
+
console.log(`Season 1 Final Rankings:`);
|
|
553
|
+
historicLeaderboard.rankings.forEach(entry => {
|
|
554
|
+
console.log(`${entry.rank}. ${entry.wallet}: ${entry.totalXp} XP`);
|
|
555
|
+
});
|
|
556
|
+
```
|
|
557
|
+
|
|
558
|
+
### Platform Volume Metrics
|
|
559
|
+
|
|
560
|
+
```typescript
|
|
561
|
+
// Get platform-wide DEX volume summary
|
|
562
|
+
const volume = await sdk.fetchDexAggregatedVolumeSummary();
|
|
563
|
+
|
|
564
|
+
console.log(`📊 DEX Platform Volume:`);
|
|
565
|
+
console.log(` 24h: $${volume.volume1d.toFixed(2)} (${(volume.volume1dDelta * 100).toFixed(1)}%)`);
|
|
566
|
+
console.log(` 7d: $${volume.volume7d.toFixed(2)} (${(volume.volume7dDelta * 100).toFixed(1)}%)`);
|
|
567
|
+
console.log(` 30d: $${volume.volume30d.toFixed(2)} (${(volume.volume30dDelta * 100).toFixed(1)}%)`);
|
|
568
|
+
|
|
569
|
+
// Trend analysis
|
|
570
|
+
if (volume.volume1dDelta > volume.volume7dDelta) {
|
|
571
|
+
console.log(`📈 Accelerating: 24h growth stronger than 7d avg`);
|
|
572
|
+
} else if (volume.volume1dDelta < -0.1) {
|
|
573
|
+
console.log(`📉 Warning: Significant 24h decline (${(volume.volume1dDelta * 100).toFixed(1)}%)`);
|
|
574
|
+
}
|
|
575
|
+
```
|
|
576
|
+
|
|
577
|
+
**DEX Leaderboard & Volume Demos (3 total):**
|
|
578
|
+
- `npm run demo:dex:leaderboard` - Seasonal leaderboard queries and XP rankings
|
|
579
|
+
- `npm run demo:dex:volume-summary` - Platform volume metrics and trend analysis
|
|
580
|
+
- `npm run demo:dex:all` - Orchestrator managing all DEX demos (pools, pricing, swap, leaderboard, volume)
|
|
581
|
+
|
|
582
|
+
---
|
|
583
|
+
|
|
506
584
|
## Fee Generation & Collection
|
|
507
585
|
|
|
508
586
|
Liquidity provider fee workflows with multi-wallet testing.
|
|
@@ -686,9 +764,9 @@ held.forEach(token => {
|
|
|
686
764
|
// Query GALA supply information
|
|
687
765
|
const supplies = await sdk.fetchTokenClassesWithSupply([
|
|
688
766
|
{
|
|
689
|
-
collection: '
|
|
767
|
+
collection: 'GALA',
|
|
690
768
|
category: 'Unit',
|
|
691
|
-
type: '
|
|
769
|
+
type: 'none',
|
|
692
770
|
additionalKey: 'none'
|
|
693
771
|
}
|
|
694
772
|
]);
|
package/README.md
CHANGED
|
@@ -7,6 +7,7 @@ A comprehensive TypeScript SDK for the Gala Launchpad Backend API, providing typ
|
|
|
7
7
|
[](https://badge.fury.io/js/@gala-chain%2Flaunchpad-sdk)
|
|
8
8
|
[](https://opensource.org/licenses/MIT)
|
|
9
9
|
[](http://www.typescriptlang.org/)
|
|
10
|
+
[](./docs/API-REFERENCE.md)
|
|
10
11
|
|
|
11
12
|
## Features
|
|
12
13
|
|
|
@@ -294,6 +295,66 @@ const result = await sdk.buy({
|
|
|
294
295
|
- ✅ Missing wallet throws `ValidationError` with code `WALLET_REQUIRED`
|
|
295
296
|
- ⚠️ Only methods that sign transactions require a wallet
|
|
296
297
|
|
|
298
|
+
## Environment Configuration
|
|
299
|
+
|
|
300
|
+
The SDK supports multiple environments (STAGE and PROD). All demo scripts and examples use a **centralized environment configuration pattern** via `.env` file.
|
|
301
|
+
|
|
302
|
+
### Quick Setup
|
|
303
|
+
|
|
304
|
+
Create/edit `.env` in the repository root:
|
|
305
|
+
|
|
306
|
+
```bash
|
|
307
|
+
# .env
|
|
308
|
+
ENVIRONMENT=STAGE # Switch between STAGE and PROD
|
|
309
|
+
WALLET_PRIVATE_KEY=0x... # Your wallet private key (optional)
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
All demo scripts automatically read from this `.env` file:
|
|
313
|
+
|
|
314
|
+
```bash
|
|
315
|
+
npm run demo:read-only # Uses ENVIRONMENT from .env
|
|
316
|
+
npm run demo:dex # Uses ENVIRONMENT from .env
|
|
317
|
+
npm run demo:liquidity # Uses ENVIRONMENT from .env
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
### Environment Values
|
|
321
|
+
|
|
322
|
+
| Value | Accepts | Use Case |
|
|
323
|
+
|-------|---------|----------|
|
|
324
|
+
| `STAGE` | `STAGE`, `STAGING` | Development/staging |
|
|
325
|
+
| `PROD` | `PROD`, `PRODUCTION` | Production |
|
|
326
|
+
| Default | (if not set) | Defaults to `STAGE` with warning |
|
|
327
|
+
|
|
328
|
+
### SDK Initialization
|
|
329
|
+
|
|
330
|
+
When using demo scripts or examples, the environment is automatically loaded:
|
|
331
|
+
|
|
332
|
+
```typescript
|
|
333
|
+
import { getEnvironment } from './examples/utils/get-environment';
|
|
334
|
+
|
|
335
|
+
const environment = getEnvironment(); // Reads from .env
|
|
336
|
+
const sdk = new LaunchpadSDK({
|
|
337
|
+
env: environment,
|
|
338
|
+
wallet: undefined // Optional
|
|
339
|
+
});
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
### Validation
|
|
343
|
+
|
|
344
|
+
Prevent hardcoded environment values:
|
|
345
|
+
|
|
346
|
+
```bash
|
|
347
|
+
npm run validate:env # Validates no hardcoded 'STAGE' or 'PROD'
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
### Full Documentation
|
|
351
|
+
|
|
352
|
+
See [docs/ENVIRONMENT_CONFIGURATION.md](./docs/ENVIRONMENT_CONFIGURATION.md) for:
|
|
353
|
+
- Architecture and implementation details
|
|
354
|
+
- Pattern for adding new scripts
|
|
355
|
+
- Troubleshooting guide
|
|
356
|
+
- Migration guide for existing scripts
|
|
357
|
+
|
|
297
358
|
## Token Format Migration (v3.33.0)
|
|
298
359
|
|
|
299
360
|
### Breaking Change: Strict Token Format Enforcement
|
|
@@ -1113,6 +1174,62 @@ console.log(`Status: ${tokenTransfer.status}`);
|
|
|
1113
1174
|
- **GalaChain Integration**: Direct transfers via GalaChain gateway
|
|
1114
1175
|
- **Error Handling**: Detailed error types for different failure scenarios
|
|
1115
1176
|
|
|
1177
|
+
## Lock/Unlock Operations
|
|
1178
|
+
|
|
1179
|
+
Lock and unlock tokens on GalaChain for staking, escrow, and vesting mechanisms:
|
|
1180
|
+
|
|
1181
|
+
```typescript
|
|
1182
|
+
import { createLaunchpadSDK } from '@gala-chain/launchpad-sdk';
|
|
1183
|
+
|
|
1184
|
+
const sdk = createLaunchpadSDK({
|
|
1185
|
+
wallet: 'your-private-key-or-mnemonic'
|
|
1186
|
+
});
|
|
1187
|
+
|
|
1188
|
+
// Lock tokens - caller becomes lock authority by default
|
|
1189
|
+
const lockResult = await sdk.lockToken({
|
|
1190
|
+
tokenName: 'tinyevil',
|
|
1191
|
+
amount: '1000' // Token amount in smallest unit
|
|
1192
|
+
});
|
|
1193
|
+
|
|
1194
|
+
console.log(`Locked tokens, tx: ${lockResult.transactionId}`);
|
|
1195
|
+
|
|
1196
|
+
// Lock with custom authority and expiration
|
|
1197
|
+
const escrowLock = await sdk.lockToken({
|
|
1198
|
+
tokenName: 'tinyevil',
|
|
1199
|
+
amount: '5000',
|
|
1200
|
+
lockAuthority: 'eth|0xEscrowContract...', // Third party can unlock
|
|
1201
|
+
expires: Date.now() + 7 * 24 * 60 * 60 * 1000, // Auto-release in 1 week
|
|
1202
|
+
name: 'escrow-deal-123' // Named lock for matching
|
|
1203
|
+
});
|
|
1204
|
+
|
|
1205
|
+
// Unlock tokens - must be called by lock authority
|
|
1206
|
+
const unlockResult = await sdk.unlockToken({
|
|
1207
|
+
tokenName: 'tinyevil',
|
|
1208
|
+
amount: '1000'
|
|
1209
|
+
});
|
|
1210
|
+
|
|
1211
|
+
console.log(`Unlocked tokens, tx: ${unlockResult.transactionId}`);
|
|
1212
|
+
|
|
1213
|
+
// Unlock specific named lock
|
|
1214
|
+
await sdk.unlockToken({
|
|
1215
|
+
tokenName: 'tinyevil',
|
|
1216
|
+
amount: '5000',
|
|
1217
|
+
name: 'escrow-deal-123' // Must match lock name
|
|
1218
|
+
});
|
|
1219
|
+
```
|
|
1220
|
+
|
|
1221
|
+
### Lock Features
|
|
1222
|
+
- **Lock Authority**: Specify who can unlock (defaults to caller)
|
|
1223
|
+
- **Expiration**: Optional auto-release timestamp
|
|
1224
|
+
- **Named Locks**: Identify locks by name for targeted unlocks
|
|
1225
|
+
- **EIP-712 Signatures**: Secure blockchain transactions
|
|
1226
|
+
- **Idempotency**: Optional unique keys prevent duplicate operations
|
|
1227
|
+
|
|
1228
|
+
### Use Cases
|
|
1229
|
+
- **Staking**: Lock tokens for reward programs
|
|
1230
|
+
- **Escrow**: Third-party holds tokens until conditions met
|
|
1231
|
+
- **Vesting**: Time-locked token releases with expiration
|
|
1232
|
+
|
|
1116
1233
|
## Multi-Wallet Support
|
|
1117
1234
|
|
|
1118
1235
|
The SDK supports **per-operation wallet overrides** for testing multi-wallet workflows without creating new SDK instances. This is ideal for:
|
|
@@ -1307,7 +1424,7 @@ fetchPoolDetails(tokenName): Promise<PoolDetailsData>
|
|
|
1307
1424
|
|
|
1308
1425
|
fetchTokenDetails(tokenId): Promise<TokenDetails>
|
|
1309
1426
|
// Returns: { symbol, decimals, name, image, verified, network, chainId, contractAddress, tradingEnabled, ... }
|
|
1310
|
-
// Supports flexible tokenId: string ('
|
|
1427
|
+
// Supports flexible tokenId: string ('GUSDC|Unit|none|eth:0x...') or object format
|
|
1311
1428
|
|
|
1312
1429
|
fetchVolumeData(options): Promise<GraphDataResult>
|
|
1313
1430
|
// Returns: { dataPoints }
|