@gala-chain/launchpad-sdk 8.1.0 → 9.0.0-rc.1
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 +837 -0
- package/EXAMPLES.md +95 -681
- package/MIGRATING-TO-9.0.md +343 -0
- package/README.md +46 -17
- package/dist/LaunchpadSDK.d.ts +536 -616
- package/dist/LaunchpadSDK.d.ts.map +1 -1
- package/dist/api/LaunchpadAPI.d.ts +6 -176
- package/dist/api/LaunchpadAPI.d.ts.map +1 -1
- package/dist/auth/SessionAuthService.d.ts +32 -2
- package/dist/auth/SessionAuthService.d.ts.map +1 -1
- package/dist/auth/SignatureAuth.d.ts +2 -2
- package/dist/auth/SignatureAuth.d.ts.map +1 -1
- package/dist/auth/session.d.ts +59 -0
- package/dist/auth/session.d.ts.map +1 -0
- package/dist/auth/types.d.ts +7 -2
- package/dist/auth/types.d.ts.map +1 -1
- package/dist/config/environments.d.ts +7 -2
- package/dist/config/environments.d.ts.map +1 -1
- package/dist/constants/decimals.d.ts +0 -23
- package/dist/constants/decimals.d.ts.map +1 -1
- package/dist/constants/endpoints.d.ts +19 -8
- package/dist/constants/endpoints.d.ts.map +1 -1
- package/dist/constants/enums.d.ts +19 -0
- package/dist/constants/enums.d.ts.map +1 -1
- package/dist/constants/version.generated.d.ts +1 -1
- package/dist/constants/version.generated.d.ts.map +1 -1
- package/dist/errors/LaunchpadSDKError.d.ts +18 -0
- package/dist/errors/LaunchpadSDKError.d.ts.map +1 -1
- package/dist/helpers/sdk.d.ts.map +1 -1
- package/dist/index.browser.d.ts +40 -45
- package/dist/index.browser.d.ts.map +1 -1
- package/dist/index.browser.esm.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +1 -1
- package/dist/index.node.d.ts +4 -5
- package/dist/index.node.d.ts.map +1 -1
- package/dist/launchpad/bundle-submission.d.ts +57 -10
- package/dist/launchpad/bundle-submission.d.ts.map +1 -1
- package/dist/launchpad/create-sale-validation.d.ts +19 -0
- package/dist/launchpad/create-sale-validation.d.ts.map +1 -0
- package/dist/launchpad/transport.d.ts +33 -2
- package/dist/launchpad/transport.d.ts.map +1 -1
- package/dist/launchpad/writes.d.ts +37 -11
- package/dist/launchpad/writes.d.ts.map +1 -1
- package/dist/native.cjs +1 -1
- package/dist/native.d.ts +4 -5
- package/dist/native.d.ts.map +1 -1
- package/dist/native.esm.js +1 -1
- package/dist/schemas/launchpad.d.ts +3 -2
- package/dist/schemas/launchpad.d.ts.map +1 -1
- package/dist/schemas/primitives.d.ts +12 -2
- package/dist/schemas/primitives.d.ts.map +1 -1
- package/dist/schemas/user.d.ts +3 -18
- package/dist/schemas/user.d.ts.map +1 -1
- package/dist/schemas/validators.d.ts +3 -3
- package/dist/services/AbstractCacheService.d.ts +2 -2
- package/dist/services/ApiKeyService.d.ts +1 -1
- package/dist/services/BanService.d.ts +1 -1
- package/dist/services/ChartService.d.ts.map +1 -1
- package/dist/services/ContentReactionService.d.ts +6 -18
- package/dist/services/ContentReactionService.d.ts.map +1 -1
- package/dist/services/EventsQueryService.d.ts +47 -0
- package/dist/services/EventsQueryService.d.ts.map +1 -0
- package/dist/services/GalaChainBalanceService.d.ts +17 -89
- package/dist/services/GalaChainBalanceService.d.ts.map +1 -1
- package/dist/services/GalaChainLockService.d.ts +19 -20
- package/dist/services/GalaChainLockService.d.ts.map +1 -1
- package/dist/services/GalaChainService.d.ts +28 -15
- package/dist/services/GalaChainService.d.ts.map +1 -1
- package/dist/services/GalaChainTokenService.d.ts +25 -53
- package/dist/services/GalaChainTokenService.d.ts.map +1 -1
- package/dist/services/GalaChainTransferService.d.ts +42 -41
- package/dist/services/GalaChainTransferService.d.ts.map +1 -1
- package/dist/services/HealthService.d.ts +33 -0
- package/dist/services/HealthService.d.ts.map +1 -0
- package/dist/services/ImageService.d.ts +3 -3
- package/dist/services/ImageService.d.ts.map +1 -1
- package/dist/services/LaunchpadPriceService.d.ts +66 -0
- package/dist/services/LaunchpadPriceService.d.ts.map +1 -0
- package/dist/services/LaunchpadService.d.ts +34 -42
- package/dist/services/LaunchpadService.d.ts.map +1 -1
- package/dist/services/MessagesService.d.ts +12 -44
- package/dist/services/MessagesService.d.ts.map +1 -1
- package/dist/services/ModeratorService.d.ts +2 -2
- package/dist/services/ModeratorService.d.ts.map +1 -1
- package/dist/services/NftCollectionService.d.ts +22 -6
- package/dist/services/NftCollectionService.d.ts.map +1 -1
- package/dist/services/OverseerService.d.ts +3 -3
- package/dist/services/OverseerService.d.ts.map +1 -1
- package/dist/services/PlatformStatsService.d.ts +1 -2
- package/dist/services/PlatformStatsService.d.ts.map +1 -1
- package/dist/services/PoolService.d.ts +28 -65
- package/dist/services/PoolService.d.ts.map +1 -1
- package/dist/services/RestrictedNamesService.d.ts +1 -1
- package/dist/services/RestrictedNamesService.d.ts.map +1 -1
- package/dist/services/StreamChatService.d.ts +8 -19
- package/dist/services/StreamChatService.d.ts.map +1 -1
- package/dist/services/StreamTokenServiceBase.d.ts +2 -1
- package/dist/services/StreamTokenServiceBase.d.ts.map +1 -1
- package/dist/services/StreamWebSocketService.d.ts +423 -451
- package/dist/services/StreamWebSocketService.d.ts.map +1 -1
- package/dist/services/StreamingService.d.ts +14 -15
- package/dist/services/StreamingService.d.ts.map +1 -1
- package/dist/services/TokenBanService.d.ts +1 -1
- package/dist/services/TokenResolverService.d.ts +5 -5
- package/dist/services/TokenResolverService.d.ts.map +1 -1
- package/dist/services/TradeService.d.ts +13 -9
- package/dist/services/TradeService.d.ts.map +1 -1
- package/dist/services/TradingQuotesService.d.ts.map +1 -1
- package/dist/services/UserService.d.ts +64 -20
- package/dist/services/UserService.d.ts.map +1 -1
- package/dist/services/gateway-transport.d.ts +32 -0
- package/dist/services/gateway-transport.d.ts.map +1 -0
- package/dist/services/gateway-writes.d.ts +83 -0
- package/dist/services/gateway-writes.d.ts.map +1 -0
- package/dist/services/realtime/event-catalog.d.ts +456 -0
- package/dist/services/realtime/event-catalog.d.ts.map +1 -0
- package/dist/services/shared/pagination-helpers.d.ts +22 -5
- package/dist/services/shared/pagination-helpers.d.ts.map +1 -1
- package/dist/services/shared/service-validators.d.ts.map +1 -1
- package/dist/signing/index.d.ts +2 -3
- package/dist/signing/index.d.ts.map +1 -1
- package/dist/signing/signers.d.ts +64 -9
- package/dist/signing/signers.d.ts.map +1 -1
- package/dist/signing/types.d.ts +7 -10
- package/dist/signing/types.d.ts.map +1 -1
- package/dist/types/api-key.dto.d.ts +1 -1
- package/dist/types/ban.dto.d.ts +21 -16
- package/dist/types/ban.dto.d.ts.map +1 -1
- package/dist/types/burn.dto.d.ts +4 -2
- package/dist/types/burn.dto.d.ts.map +1 -1
- package/dist/types/chat-messages.dto.d.ts +10 -72
- package/dist/types/chat-messages.dto.d.ts.map +1 -1
- package/dist/types/comments.dto.d.ts +8 -78
- package/dist/types/comments.dto.d.ts.map +1 -1
- package/dist/types/common.d.ts +42 -85
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/constraints.d.ts +47 -23
- package/dist/types/constraints.d.ts.map +1 -1
- package/dist/types/content-flag.dto.d.ts +5 -1
- package/dist/types/content-flag.dto.d.ts.map +1 -1
- package/dist/types/content-reactions.dto.d.ts +0 -4
- package/dist/types/content-reactions.dto.d.ts.map +1 -1
- package/dist/types/dto.d.ts +0 -5
- package/dist/types/dto.d.ts.map +1 -1
- package/dist/types/engagement-stats.dto.d.ts +16 -27
- package/dist/types/engagement-stats.dto.d.ts.map +1 -1
- package/dist/types/events.dto.d.ts +89 -0
- package/dist/types/events.dto.d.ts.map +1 -1
- package/dist/types/global-feed.dto.d.ts +23 -164
- package/dist/types/global-feed.dto.d.ts.map +1 -1
- package/dist/types/health.dto.d.ts +32 -0
- package/dist/types/health.dto.d.ts.map +1 -0
- package/dist/types/launchpad.dto.d.ts +77 -323
- package/dist/types/launchpad.dto.d.ts.map +1 -1
- package/dist/types/lock.dto.d.ts +12 -7
- package/dist/types/lock.dto.d.ts.map +1 -1
- package/dist/types/messages.dto.d.ts +168 -118
- package/dist/types/messages.dto.d.ts.map +1 -1
- package/dist/types/moderator.dto.d.ts +1 -1
- package/dist/types/options.dto.d.ts +8 -36
- package/dist/types/options.dto.d.ts.map +1 -1
- package/dist/types/overseer.dto.d.ts +2 -1
- package/dist/types/overseer.dto.d.ts.map +1 -1
- package/dist/types/platform-stats.dto.d.ts +3 -3
- package/dist/types/realtime-events.dto.d.ts +340 -0
- package/dist/types/realtime-events.dto.d.ts.map +1 -0
- package/dist/types/restricted-names.dto.d.ts +2 -2
- package/dist/types/restricted-names.dto.d.ts.map +1 -1
- package/dist/types/stream-chat.dto.d.ts +15 -14
- package/dist/types/stream-chat.dto.d.ts.map +1 -1
- package/dist/types/streaming.dto.d.ts +73 -104
- package/dist/types/streaming.dto.d.ts.map +1 -1
- package/dist/types/token-ban.dto.d.ts.map +1 -1
- package/dist/types/token-config.dto.d.ts +34 -19
- package/dist/types/token-config.dto.d.ts.map +1 -1
- package/dist/types/trades-query.dto.d.ts +8 -24
- package/dist/types/trades-query.dto.d.ts.map +1 -1
- package/dist/types/user.dto.d.ts +133 -112
- package/dist/types/user.dto.d.ts.map +1 -1
- package/dist/types/websocket-events.dto.d.ts +5 -5
- package/dist/types/websocket-events.dto.d.ts.map +1 -1
- package/dist/utils/address-formatter.d.ts +25 -2
- package/dist/utils/address-formatter.d.ts.map +1 -1
- package/dist/utils/agent-config.d.ts +9 -4
- package/dist/utils/agent-config.d.ts.map +1 -1
- package/dist/utils/auto-pagination.d.ts +7 -240
- package/dist/utils/auto-pagination.d.ts.map +1 -1
- package/dist/utils/bignumber-helpers.d.ts +3 -2
- package/dist/utils/bignumber-helpers.d.ts.map +1 -1
- package/dist/utils/delimiter-parser.d.ts +0 -13
- package/dist/utils/delimiter-parser.d.ts.map +1 -1
- package/dist/utils/error-factories.d.ts +4 -3
- package/dist/utils/error-factories.d.ts.map +1 -1
- package/dist/utils/error-patterns.d.ts +0 -47
- package/dist/utils/error-patterns.d.ts.map +1 -1
- package/dist/utils/error-wrapper.d.ts +5 -5
- package/dist/utils/errors.d.ts +53 -318
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/http.d.ts +36 -3
- package/dist/utils/http.d.ts.map +1 -1
- package/dist/utils/message-validators.d.ts.map +1 -1
- package/dist/utils/pagination-helpers.d.ts +17 -0
- package/dist/utils/pagination-helpers.d.ts.map +1 -1
- package/dist/utils/pagination-validation.d.ts +2 -2
- package/dist/utils/response-handlers.d.ts.map +1 -1
- package/dist/utils/service-validators.d.ts +6 -6
- package/dist/utils/service-validators.d.ts.map +1 -1
- package/dist/utils/token-format-converter.d.ts +1 -1
- package/dist/utils/token-parser.d.ts +6 -127
- package/dist/utils/token-parser.d.ts.map +1 -1
- package/dist/utils/token-stringification.d.ts +7 -7
- package/dist/utils/token-stringification.d.ts.map +1 -1
- package/dist/utils/tokenNameNormalizer.d.ts +2 -2
- package/dist/utils/tokenNormalizer.d.ts +5 -29
- package/dist/utils/tokenNormalizer.d.ts.map +1 -1
- package/dist/utils/unique-key-generator.d.ts +7 -134
- package/dist/utils/unique-key-generator.d.ts.map +1 -1
- package/dist/utils/validation-helpers.d.ts +21 -64
- package/dist/utils/validation-helpers.d.ts.map +1 -1
- package/dist/utils/validation.d.ts +4 -1
- package/dist/utils/validation.d.ts.map +1 -1
- package/package.json +47 -87
- package/dist/api/dto/BurnTokensDto.d.ts +0 -77
- package/dist/api/dto/BurnTokensDto.d.ts.map +0 -1
- package/dist/api/dto/LockTokenDto.d.ts +0 -85
- package/dist/api/dto/LockTokenDto.d.ts.map +0 -1
- package/dist/api/dto/TransferTokenDto.d.ts +0 -64
- package/dist/api/dto/TransferTokenDto.d.ts.map +0 -1
- package/dist/api/dto/UnlockTokenDto.d.ts +0 -74
- package/dist/api/dto/UnlockTokenDto.d.ts.map +0 -1
- package/dist/bridge/BridgeService.d.ts +0 -484
- package/dist/bridge/BridgeService.d.ts.map +0 -1
- package/dist/bridge/GalaConnectClient.d.ts +0 -170
- package/dist/bridge/GalaConnectClient.d.ts.map +0 -1
- package/dist/bridge/constants/index.d.ts +0 -7
- package/dist/bridge/constants/index.d.ts.map +0 -1
- package/dist/bridge/constants/tokens.d.ts +0 -212
- package/dist/bridge/constants/tokens.d.ts.map +0 -1
- package/dist/bridge/index.d.ts +0 -24
- package/dist/bridge/index.d.ts.map +0 -1
- package/dist/bridge/public-types.d.ts +0 -2
- package/dist/bridge/public-types.d.ts.map +0 -1
- package/dist/bridge/strategies/BridgeStrategy.d.ts +0 -204
- package/dist/bridge/strategies/BridgeStrategy.d.ts.map +0 -1
- package/dist/bridge/strategies/EthereumBridgeStrategy.d.ts +0 -178
- package/dist/bridge/strategies/EthereumBridgeStrategy.d.ts.map +0 -1
- package/dist/bridge/strategies/SolanaBridgeStrategy.d.ts +0 -236
- package/dist/bridge/strategies/SolanaBridgeStrategy.d.ts.map +0 -1
- package/dist/bridge/types/bridge.dto.d.ts +0 -772
- package/dist/bridge/types/bridge.dto.d.ts.map +0 -1
- package/dist/bridge/types/bridgeable-token.dto.d.ts +0 -209
- package/dist/bridge/types/bridgeable-token.dto.d.ts.map +0 -1
- package/dist/bridge/types/eip712.d.ts +0 -66
- package/dist/bridge/types/eip712.d.ts.map +0 -1
- package/dist/bridge/types/index.d.ts +0 -8
- package/dist/bridge/types/index.d.ts.map +0 -1
- package/dist/bridge/utils/RateLimiter.d.ts +0 -34
- package/dist/bridge/utils/RateLimiter.d.ts.map +0 -1
- package/dist/bridge/utils/address-formatter.d.ts +0 -25
- package/dist/bridge/utils/address-formatter.d.ts.map +0 -1
- package/dist/bridge/utils/addressValidation.d.ts +0 -200
- package/dist/bridge/utils/addressValidation.d.ts.map +0 -1
- package/dist/bridge/utils/balanceHelpers.d.ts +0 -215
- package/dist/bridge/utils/balanceHelpers.d.ts.map +0 -1
- package/dist/bridge/utils/bridgeErrors.d.ts +0 -98
- package/dist/bridge/utils/bridgeErrors.d.ts.map +0 -1
- package/dist/bridge/utils/bridgeOutHelpers.d.ts +0 -68
- package/dist/bridge/utils/bridgeOutHelpers.d.ts.map +0 -1
- package/dist/bridge/utils/bridgePayload.d.ts +0 -98
- package/dist/bridge/utils/bridgePayload.d.ts.map +0 -1
- package/dist/bridge/utils/bridgeStatusParser.d.ts +0 -76
- package/dist/bridge/utils/bridgeStatusParser.d.ts.map +0 -1
- package/dist/bridge/utils/eip712Helpers.d.ts +0 -66
- package/dist/bridge/utils/eip712Helpers.d.ts.map +0 -1
- package/dist/bridge/utils/index.d.ts +0 -19
- package/dist/bridge/utils/index.d.ts.map +0 -1
- package/dist/bridge/utils/retry.d.ts +0 -112
- package/dist/bridge/utils/retry.d.ts.map +0 -1
- package/dist/bridge/utils/strategyDelegation.d.ts +0 -126
- package/dist/bridge/utils/strategyDelegation.d.ts.map +0 -1
- package/dist/bridge/utils/tokenIdUtils.d.ts +0 -86
- package/dist/bridge/utils/tokenIdUtils.d.ts.map +0 -1
- package/dist/bridge/utils/tokenMath.d.ts +0 -39
- package/dist/bridge/utils/tokenMath.d.ts.map +0 -1
- package/dist/bridge/utils/tokenMetadataResolver.d.ts +0 -97
- package/dist/bridge/utils/tokenMetadataResolver.d.ts.map +0 -1
- package/dist/helpers/wallet.d.ts +0 -151
- package/dist/helpers/wallet.d.ts.map +0 -1
- package/dist/react/WalletContext.d.ts +0 -60
- package/dist/react/WalletContext.d.ts.map +0 -1
- package/dist/react/index.d.ts +0 -65
- package/dist/react/index.d.ts.map +0 -1
- package/dist/react/types.d.ts +0 -76
- package/dist/react/types.d.ts.map +0 -1
- package/dist/react/useWallet.d.ts +0 -123
- package/dist/react/useWallet.d.ts.map +0 -1
- package/dist/react/useWalletConnection.d.ts +0 -89
- package/dist/react/useWalletConnection.d.ts.map +0 -1
- package/dist/react/useWalletDetection.d.ts +0 -81
- package/dist/react/useWalletDetection.d.ts.map +0 -1
- package/dist/react.cjs +0 -1
- package/dist/react.esm.js +0 -1
- package/dist/services/AbstractTokenFetchService.d.ts +0 -150
- package/dist/services/AbstractTokenFetchService.d.ts.map +0 -1
- package/dist/services/BatchedCacheService.d.ts +0 -133
- package/dist/services/BatchedCacheService.d.ts.map +0 -1
- package/dist/services/BridgeableTokenCache.d.ts +0 -120
- package/dist/services/BridgeableTokenCache.d.ts.map +0 -1
- package/dist/services/BridgeableTokenService.d.ts +0 -218
- package/dist/services/BridgeableTokenService.d.ts.map +0 -1
- package/dist/services/DexService.d.ts +0 -440
- package/dist/services/DexService.d.ts.map +0 -1
- package/dist/services/NetworkKeyedCacheService.d.ts +0 -185
- package/dist/services/NetworkKeyedCacheService.d.ts.map +0 -1
- package/dist/services/PriceHistoryService.d.ts +0 -209
- package/dist/services/PriceHistoryService.d.ts.map +0 -1
- package/dist/services/StreamingEventService.d.ts +0 -441
- package/dist/services/StreamingEventService.d.ts.map +0 -1
- package/dist/services/WrapService.d.ts +0 -171
- package/dist/services/WrapService.d.ts.map +0 -1
- package/dist/services/WrappableTokenCache.d.ts +0 -100
- package/dist/services/WrappableTokenCache.d.ts.map +0 -1
- package/dist/services/WrappableTokenService.d.ts +0 -130
- package/dist/services/WrappableTokenService.d.ts.map +0 -1
- package/dist/setup.d.ts +0 -8
- package/dist/setup.d.ts.map +0 -1
- package/dist/tokens/transfers.d.ts +0 -95
- package/dist/tokens/transfers.d.ts.map +0 -1
- package/dist/types/comment.dto.d.ts +0 -176
- package/dist/types/comment.dto.d.ts.map +0 -1
- package/dist/types/galachain-api.types.d.ts +0 -297
- package/dist/types/galachain-api.types.d.ts.map +0 -1
- package/dist/types/priceHistory.dto.d.ts +0 -134
- package/dist/types/priceHistory.dto.d.ts.map +0 -1
- package/dist/types/streaming-events.dto.d.ts +0 -605
- package/dist/types/streaming-events.dto.d.ts.map +0 -1
- package/dist/types/token.types.d.ts +0 -359
- package/dist/types/token.types.d.ts.map +0 -1
- package/dist/types/wrappable-token.dto.d.ts +0 -305
- package/dist/types/wrappable-token.dto.d.ts.map +0 -1
- package/dist/utils/crypto-compat.d.ts +0 -40
- package/dist/utils/crypto-compat.d.ts.map +0 -1
- package/dist/utils/load-env.d.ts +0 -31
- package/dist/utils/load-env.d.ts.map +0 -1
- package/dist/utils/token-instance-key.d.ts +0 -57
- package/dist/utils/token-instance-key.d.ts.map +0 -1
- package/dist/utils/wallet.d.ts +0 -166
- package/dist/utils/wallet.d.ts.map +0 -1
- package/dist/wallet/ExternalWalletProvider.d.ts +0 -90
- package/dist/wallet/ExternalWalletProvider.d.ts.map +0 -1
- package/dist/wallet/GalaWalletProvider.d.ts +0 -122
- package/dist/wallet/GalaWalletProvider.d.ts.map +0 -1
- package/dist/wallet/PrivateKeyProvider.d.ts +0 -90
- package/dist/wallet/PrivateKeyProvider.d.ts.map +0 -1
- package/dist/wallet/detection.d.ts +0 -107
- package/dist/wallet/detection.d.ts.map +0 -1
- package/dist/wallet/event-handlers.d.ts +0 -50
- package/dist/wallet/event-handlers.d.ts.map +0 -1
- package/dist/wallet/index.d.ts +0 -51
- package/dist/wallet/index.d.ts.map +0 -1
- package/dist/wallet/signing-operation.d.ts +0 -19
- package/dist/wallet/signing-operation.d.ts.map +0 -1
- package/dist/wallet/typed-data-helpers.d.ts +0 -68
- package/dist/wallet/typed-data-helpers.d.ts.map +0 -1
- package/dist/wallet/types.d.ts +0 -267
- package/dist/wallet/types.d.ts.map +0 -1
- package/dist/wallet/utils.d.ts +0 -117
- package/dist/wallet/utils.d.ts.map +0 -1
- package/dist/wallet.cjs +0 -1
- package/dist/wallet.esm.js +0 -1
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Retry Utility
|
|
3
|
-
*
|
|
4
|
-
* Provides exponential backoff retry logic for transient network failures.
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* Configuration options for retry behavior.
|
|
8
|
-
*/
|
|
9
|
-
export interface RetryOptions {
|
|
10
|
-
/**
|
|
11
|
-
* Maximum number of retry attempts (default: 3)
|
|
12
|
-
*/
|
|
13
|
-
maxRetries?: number;
|
|
14
|
-
/**
|
|
15
|
-
* Initial delay in milliseconds before first retry (default: 1000)
|
|
16
|
-
*/
|
|
17
|
-
initialDelayMs?: number;
|
|
18
|
-
/**
|
|
19
|
-
* Maximum delay in milliseconds between retries (default: 30000)
|
|
20
|
-
*/
|
|
21
|
-
maxDelayMs?: number;
|
|
22
|
-
/**
|
|
23
|
-
* Multiplier for exponential backoff (default: 2)
|
|
24
|
-
*/
|
|
25
|
-
backoffMultiplier?: number;
|
|
26
|
-
/**
|
|
27
|
-
* Jitter factor to add randomness to delays (0-1, default: 0.1)
|
|
28
|
-
* Helps prevent thundering herd problems.
|
|
29
|
-
*/
|
|
30
|
-
jitterFactor?: number;
|
|
31
|
-
/**
|
|
32
|
-
* Custom function to determine if an error should trigger a retry.
|
|
33
|
-
* Default: retries on network errors and 5xx/429 status codes.
|
|
34
|
-
*/
|
|
35
|
-
shouldRetry?: (error: unknown, attempt: number) => boolean;
|
|
36
|
-
/**
|
|
37
|
-
* Callback invoked before each retry attempt.
|
|
38
|
-
* Useful for logging or metrics.
|
|
39
|
-
*/
|
|
40
|
-
onRetry?: (error: unknown, attempt: number, delayMs: number) => void;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Determines if an error is retryable based on its characteristics.
|
|
44
|
-
*
|
|
45
|
-
* @param error - The error to evaluate
|
|
46
|
-
* @returns True if the error should trigger a retry
|
|
47
|
-
*/
|
|
48
|
-
export declare function isRetryableError(error: unknown): boolean;
|
|
49
|
-
/**
|
|
50
|
-
* Calculates the delay before the next retry attempt using exponential backoff with jitter.
|
|
51
|
-
*
|
|
52
|
-
* @param attempt - Current attempt number (1-based)
|
|
53
|
-
* @param options - Retry configuration options
|
|
54
|
-
* @returns Delay in milliseconds
|
|
55
|
-
*/
|
|
56
|
-
export declare function calculateRetryDelay(attempt: number, options: Required<Omit<RetryOptions, 'onRetry' | 'shouldRetry'>>): number;
|
|
57
|
-
/**
|
|
58
|
-
* Executes an async function with exponential backoff retry logic.
|
|
59
|
-
*
|
|
60
|
-
* @param fn - The async function to execute
|
|
61
|
-
* @param options - Retry configuration options
|
|
62
|
-
* @returns The result of the function
|
|
63
|
-
* @throws The last error if all retries are exhausted
|
|
64
|
-
*
|
|
65
|
-
* @example
|
|
66
|
-
* ```typescript
|
|
67
|
-
* const result = await withRetry(
|
|
68
|
-
* () => fetch('https://api.example.com/data'),
|
|
69
|
-
* {
|
|
70
|
-
* maxRetries: 3,
|
|
71
|
-
* onRetry: (error, attempt, delay) => {
|
|
72
|
-
* console.log(`Retry ${attempt} after ${delay}ms: ${error}`);
|
|
73
|
-
* },
|
|
74
|
-
* }
|
|
75
|
-
* );
|
|
76
|
-
* ```
|
|
77
|
-
*/
|
|
78
|
-
export declare function withRetry<T>(fn: () => Promise<T>, options?: RetryOptions): Promise<T>;
|
|
79
|
-
/**
|
|
80
|
-
* Creates a retry wrapper with pre-configured options.
|
|
81
|
-
*
|
|
82
|
-
* @param defaultOptions - Default retry options for all calls
|
|
83
|
-
* @returns A configured retry function
|
|
84
|
-
*
|
|
85
|
-
* @example
|
|
86
|
-
* ```typescript
|
|
87
|
-
* const apiRetry = createRetryWrapper({
|
|
88
|
-
* maxRetries: 5,
|
|
89
|
-
* initialDelayMs: 500,
|
|
90
|
-
* });
|
|
91
|
-
*
|
|
92
|
-
* const result = await apiRetry(() => fetchData());
|
|
93
|
-
* ```
|
|
94
|
-
*/
|
|
95
|
-
export declare function createRetryWrapper(defaultOptions: RetryOptions): <T>(fn: () => Promise<T>, overrideOptions?: RetryOptions) => Promise<T>;
|
|
96
|
-
/**
|
|
97
|
-
* Simple delay utility for async operations.
|
|
98
|
-
*
|
|
99
|
-
* @param ms - Delay duration in milliseconds
|
|
100
|
-
* @returns Promise that resolves after the specified delay
|
|
101
|
-
*
|
|
102
|
-
* @example
|
|
103
|
-
* ```typescript
|
|
104
|
-
* // Wait 1 second before continuing
|
|
105
|
-
* await delay(1000);
|
|
106
|
-
*
|
|
107
|
-
* // Wait before registration
|
|
108
|
-
* await delay(REGISTRATION_DELAY_MS);
|
|
109
|
-
* ```
|
|
110
|
-
*/
|
|
111
|
-
export declare function delay(ms: number): Promise<void>;
|
|
112
|
-
//# sourceMappingURL=retry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../../src/bridge/utils/retry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IAE3D;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACtE;AAwCD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAiCxD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,aAAa,CAAC,CAAC,GAC/D,MAAM,CAWR;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,CAAC,CAAC,CAyCZ;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,YAAY,IACrD,CAAC,EAAE,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,kBAAkB,YAAY,KAAG,OAAO,CAAC,CAAC,CAAC,CAG7E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C"}
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Strategy Delegation Helpers
|
|
3
|
-
*
|
|
4
|
-
* DRY utilities for delegating balance operations to typed strategies.
|
|
5
|
-
* Eliminates repetitive assertStrategyExists() + cast + delegate patterns
|
|
6
|
-
* across BridgeService balance methods.
|
|
7
|
-
*
|
|
8
|
-
* @module bridge/utils/strategyDelegation
|
|
9
|
-
*/
|
|
10
|
-
import type { BridgeStrategy } from '../strategies/BridgeStrategy.js';
|
|
11
|
-
import type { EthereumBridgeStrategy } from '../strategies/EthereumBridgeStrategy.js';
|
|
12
|
-
import type { SolanaBridgeStrategy } from '../strategies/SolanaBridgeStrategy.js';
|
|
13
|
-
import type { ExternalNetwork } from '../types/index.js';
|
|
14
|
-
import type { BridgeFeeEstimate, BridgeStatus } from '../types/index.js';
|
|
15
|
-
import type { GalaConnectClient } from '../GalaConnectClient.js';
|
|
16
|
-
import type { TokenMetadataResolver } from './tokenMetadataResolver.js';
|
|
17
|
-
/**
|
|
18
|
-
* Get Ethereum strategy with type assertion.
|
|
19
|
-
*
|
|
20
|
-
* Combines strategy existence check with type cast in a single call.
|
|
21
|
-
* Use this instead of assertStrategyExists() + manual cast.
|
|
22
|
-
*
|
|
23
|
-
* @param strategies - Strategy map from BridgeService
|
|
24
|
-
* @param customError - Optional custom error message
|
|
25
|
-
* @returns Typed EthereumBridgeStrategy
|
|
26
|
-
* @throws Error if Ethereum strategy not configured
|
|
27
|
-
*
|
|
28
|
-
* @example
|
|
29
|
-
* ```typescript
|
|
30
|
-
* const ethStrategy = getEthereumStrategy(this.strategies);
|
|
31
|
-
* const balance = await ethStrategy.getEthereumTokenBalance(symbol, address);
|
|
32
|
-
* ```
|
|
33
|
-
*/
|
|
34
|
-
export declare function getEthereumStrategy(strategies: Map<ExternalNetwork, BridgeStrategy>, customError?: string): EthereumBridgeStrategy;
|
|
35
|
-
/**
|
|
36
|
-
* Get Solana strategy with type assertion.
|
|
37
|
-
*
|
|
38
|
-
* Combines strategy existence check with type cast in a single call.
|
|
39
|
-
* Use this instead of assertStrategyExists() + manual cast.
|
|
40
|
-
*
|
|
41
|
-
* @param strategies - Strategy map from BridgeService
|
|
42
|
-
* @param customError - Optional custom error message
|
|
43
|
-
* @returns Typed SolanaBridgeStrategy
|
|
44
|
-
* @throws Error if Solana strategy not configured
|
|
45
|
-
*
|
|
46
|
-
* @example
|
|
47
|
-
* ```typescript
|
|
48
|
-
* const solStrategy = getSolanaStrategy(this.strategies);
|
|
49
|
-
* const balance = await solStrategy.getSolanaTokenBalance(symbol, address);
|
|
50
|
-
* ```
|
|
51
|
-
*/
|
|
52
|
-
export declare function getSolanaStrategy(strategies: Map<ExternalNetwork, BridgeStrategy>, customError?: string): SolanaBridgeStrategy;
|
|
53
|
-
/**
|
|
54
|
-
* Resolve target address with wallet fallback.
|
|
55
|
-
*
|
|
56
|
-
* A common pattern in balance methods: use provided address or fall back
|
|
57
|
-
* to strategy's configured wallet address.
|
|
58
|
-
*
|
|
59
|
-
* @param providedAddress - Optional user-provided address
|
|
60
|
-
* @param strategy - Strategy instance with getWalletAddress()
|
|
61
|
-
* @returns Resolved address (user-provided or wallet default)
|
|
62
|
-
*
|
|
63
|
-
* @example
|
|
64
|
-
* ```typescript
|
|
65
|
-
* const targetAddress = resolveTargetAddress(address, ethStrategy);
|
|
66
|
-
* // Returns address if provided, otherwise ethStrategy.getWalletAddress()
|
|
67
|
-
* ```
|
|
68
|
-
*/
|
|
69
|
-
export declare function resolveTargetAddress(providedAddress: string | undefined, strategy: {
|
|
70
|
-
getWalletAddress(): string;
|
|
71
|
-
}): string;
|
|
72
|
-
/**
|
|
73
|
-
* Fetch and normalize a bridge fee estimate for a configured external chain.
|
|
74
|
-
*
|
|
75
|
-
* @param client - GalaConnect bridge client.
|
|
76
|
-
* @param resolver - Token metadata resolver.
|
|
77
|
-
* @param chainId - External chain identifier.
|
|
78
|
-
* @param tokenSymbol - Token symbol.
|
|
79
|
-
* @param amount - Amount being estimated.
|
|
80
|
-
* @returns Normalized bridge fee estimate.
|
|
81
|
-
*
|
|
82
|
-
* @example
|
|
83
|
-
* ```typescript
|
|
84
|
-
* const estimate = await estimateStrategyFee(client, resolver, 'Ethereum', 'GALA', '1');
|
|
85
|
-
* ```
|
|
86
|
-
*/
|
|
87
|
-
export declare function estimateStrategyFee(client: GalaConnectClient, resolver: TokenMetadataResolver, chainId: string, tokenSymbol: string, amount: string): Promise<BridgeFeeEstimate>;
|
|
88
|
-
/**
|
|
89
|
-
* Fetch a normalized bridge transaction status.
|
|
90
|
-
*
|
|
91
|
-
* @param client - GalaConnect bridge client.
|
|
92
|
-
* @param transactionHash - Transaction hash.
|
|
93
|
-
* @returns Parsed bridge status.
|
|
94
|
-
*
|
|
95
|
-
* @example
|
|
96
|
-
* ```typescript
|
|
97
|
-
* const status = await getStrategyStatus(client, '0xabc');
|
|
98
|
-
* ```
|
|
99
|
-
*/
|
|
100
|
-
export declare function getStrategyStatus(client: GalaConnectClient, transactionHash: string): Promise<BridgeStatus>;
|
|
101
|
-
/**
|
|
102
|
-
* Return configured bridge token symbols.
|
|
103
|
-
*
|
|
104
|
-
* @param tokenConfigs - Normalized token configuration map.
|
|
105
|
-
* @returns Configured token symbols.
|
|
106
|
-
*
|
|
107
|
-
* @example
|
|
108
|
-
* ```typescript
|
|
109
|
-
* const symbols = getConfiguredTokenSymbols(tokenConfigs);
|
|
110
|
-
* ```
|
|
111
|
-
*/
|
|
112
|
-
export declare function getConfiguredTokenSymbols(tokenConfigs: ReadonlyMap<string, unknown>): string[];
|
|
113
|
-
/**
|
|
114
|
-
* Check whether a normalized token configuration map supports a symbol.
|
|
115
|
-
*
|
|
116
|
-
* @param tokenConfigs - Normalized token configuration map.
|
|
117
|
-
* @param tokenSymbol - Token symbol to check.
|
|
118
|
-
* @returns Whether the symbol is configured.
|
|
119
|
-
*
|
|
120
|
-
* @example
|
|
121
|
-
* ```typescript
|
|
122
|
-
* const supported = isConfiguredToken(tokenConfigs, 'GALA');
|
|
123
|
-
* ```
|
|
124
|
-
*/
|
|
125
|
-
export declare function isConfiguredToken(tokenConfigs: ReadonlyMap<string, unknown>, tokenSymbol: string): boolean;
|
|
126
|
-
//# sourceMappingURL=strategyDelegation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"strategyDelegation.d.ts","sourceRoot":"","sources":["../../../src/bridge/utils/strategyDelegation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAqB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAUxE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,EAChD,WAAW,CAAC,EAAE,MAAM,GACnB,sBAAsB,CAMxB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,EAChD,WAAW,CAAC,EAAE,MAAM,GACnB,oBAAoB,CAMtB;AAMD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,QAAQ,EAAE;IAAE,gBAAgB,IAAI,MAAM,CAAA;CAAE,GACvC,MAAM,CAER;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,iBAAiB,EACzB,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,iBAAiB,CAAC,CAQ5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,iBAAiB,EACzB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,YAAY,CAAC,CAGvB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAE9F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1C,WAAW,EAAE,MAAM,GAClB,OAAO,CAET"}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Token ID Utilities
|
|
3
|
-
*
|
|
4
|
-
* Functions for parsing and resolving TokenId to symbol and TokenClassKey.
|
|
5
|
-
* Re-exports and builds upon the shared token-parser utilities.
|
|
6
|
-
*/
|
|
7
|
-
import type { TokenClassKey, TokenId } from '../../types/common.js';
|
|
8
|
-
/**
|
|
9
|
-
* Result of parsing a TokenId
|
|
10
|
-
*/
|
|
11
|
-
export interface ParsedTokenId {
|
|
12
|
-
/** Full TokenClassKey structure */
|
|
13
|
-
tokenClassKey: TokenClassKey;
|
|
14
|
-
/** Pipe-delimited string format (e.g., "GALA|Unit|none|none") */
|
|
15
|
-
stringified: string;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Check if a value is a TokenClassKey object
|
|
19
|
-
*
|
|
20
|
-
* Re-exports the shared isTokenClassKey from token-parser.
|
|
21
|
-
*
|
|
22
|
-
* @param value - Value to check
|
|
23
|
-
* @returns True if the value is a TokenClassKey object
|
|
24
|
-
*/
|
|
25
|
-
export declare function isTokenClassKey(value: unknown): value is TokenClassKey;
|
|
26
|
-
/**
|
|
27
|
-
* Parse a pipe-delimited token string to TokenClassKey
|
|
28
|
-
*
|
|
29
|
-
* Delegates to the shared parsePipeDelimitedToken from token-parser.
|
|
30
|
-
*
|
|
31
|
-
* @param tokenString - Pipe-delimited string (e.g., "GALA|Unit|none|none")
|
|
32
|
-
* @returns TokenClassKey object
|
|
33
|
-
* @throws Error if string format is invalid
|
|
34
|
-
*
|
|
35
|
-
* @example
|
|
36
|
-
* ```typescript
|
|
37
|
-
* const key = parseTokenString('GALA|Unit|none|none');
|
|
38
|
-
* // { collection: 'GALA', category: 'Unit', type: 'none', additionalKey: 'none' }
|
|
39
|
-
* ```
|
|
40
|
-
*/
|
|
41
|
-
export declare function parseTokenString(tokenString: string): TokenClassKey;
|
|
42
|
-
/**
|
|
43
|
-
* Stringify a TokenClassKey to pipe-delimited format
|
|
44
|
-
*
|
|
45
|
-
* Delegates to centralized stringifyTokenClassKey from utils/token-stringification.ts
|
|
46
|
-
*
|
|
47
|
-
* @param key - TokenClassKey object
|
|
48
|
-
* @returns Pipe-delimited string
|
|
49
|
-
*
|
|
50
|
-
* @example
|
|
51
|
-
* ```typescript
|
|
52
|
-
* const str = stringifyTokenClassKey({
|
|
53
|
-
* collection: 'GALA', category: 'Unit', type: 'none', additionalKey: 'none'
|
|
54
|
-
* });
|
|
55
|
-
* // "GALA|Unit|none|none"
|
|
56
|
-
* ```
|
|
57
|
-
*/
|
|
58
|
-
export declare function stringifyTokenClassKey(key: TokenClassKey): string;
|
|
59
|
-
/**
|
|
60
|
-
* Parse a TokenId (string or object) to get TokenClassKey
|
|
61
|
-
*
|
|
62
|
-
* Accepts:
|
|
63
|
-
* - Pipe-delimited string: "GALA|Unit|none|none"
|
|
64
|
-
* - TokenClassKey object: { collection: 'GALA', category: 'Unit', type: 'none', additionalKey: 'none' }
|
|
65
|
-
*
|
|
66
|
-
* NOTE: This function does NOT extract symbol. Use BridgeableTokenService to look up
|
|
67
|
-
* token metadata (symbol, decimals, contract address) by tokenId.
|
|
68
|
-
*
|
|
69
|
-
* @param tokenId - TokenId in any supported format
|
|
70
|
-
* @returns Parsed result with tokenClassKey and stringified form
|
|
71
|
-
* @throws Error if tokenId format is invalid
|
|
72
|
-
*
|
|
73
|
-
* @example String input
|
|
74
|
-
* ```typescript
|
|
75
|
-
* const result = parseTokenId('GALA|Unit|none|none');
|
|
76
|
-
* // { tokenClassKey: { collection: 'GALA', ... }, stringified: 'GALA|Unit|none|none' }
|
|
77
|
-
* ```
|
|
78
|
-
*
|
|
79
|
-
* @example Object input
|
|
80
|
-
* ```typescript
|
|
81
|
-
* const result = parseTokenId({ collection: 'GALA', category: 'Unit', type: 'none', additionalKey: 'none' });
|
|
82
|
-
* // { tokenClassKey: { collection: 'GALA', ... }, stringified: 'GALA|Unit|none|none' }
|
|
83
|
-
* ```
|
|
84
|
-
*/
|
|
85
|
-
export declare function parseTokenId(tokenId: TokenId): ParsedTokenId;
|
|
86
|
-
//# sourceMappingURL=tokenIdUtils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tokenIdUtils.d.ts","sourceRoot":"","sources":["../../../src/bridge/utils/tokenIdUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAC,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAOnE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mCAAmC;IACnC,aAAa,EAAE,aAAa,CAAC;IAC7B,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAEtE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,CAEnE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAEjE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAgB5D"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Token Math Utilities
|
|
3
|
-
*
|
|
4
|
-
* Utilities for converting between decimal and base unit representations.
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* Convert a decimal amount to base units (smallest denomination)
|
|
8
|
-
*
|
|
9
|
-
* @param amount - The decimal amount as a string (e.g., "1.5")
|
|
10
|
-
* @param decimals - The number of decimal places
|
|
11
|
-
* @returns The amount in base units as a bigint
|
|
12
|
-
* @throws Error if the amount is invalid or cannot be represented with the given decimals
|
|
13
|
-
*/
|
|
14
|
-
export declare function toBaseUnits(amount: string, decimals: number): bigint;
|
|
15
|
-
/**
|
|
16
|
-
* Convert base units to a decimal string
|
|
17
|
-
*
|
|
18
|
-
* @param amount - The amount in base units
|
|
19
|
-
* @param decimals - The number of decimal places
|
|
20
|
-
* @returns The decimal string representation with trailing zeros removed
|
|
21
|
-
*/
|
|
22
|
-
export declare function fromBaseUnits(amount: bigint, decimals: number): string;
|
|
23
|
-
/**
|
|
24
|
-
* Format a token amount for display
|
|
25
|
-
*
|
|
26
|
-
* @param amount - The decimal amount as a string
|
|
27
|
-
* @param maxDecimals - Maximum decimals to display (default: 6)
|
|
28
|
-
* @returns Formatted string with appropriate precision
|
|
29
|
-
*/
|
|
30
|
-
export declare function formatTokenAmount(amount: string, maxDecimals?: number): string;
|
|
31
|
-
/**
|
|
32
|
-
* Compare two token amounts
|
|
33
|
-
*
|
|
34
|
-
* @param a - First amount
|
|
35
|
-
* @param b - Second amount
|
|
36
|
-
* @returns -1 if a < b, 0 if a == b, 1 if a > b
|
|
37
|
-
*/
|
|
38
|
-
export declare function compareAmounts(a: string, b: string): -1 | 0 | 1;
|
|
39
|
-
//# sourceMappingURL=tokenMath.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tokenMath.d.ts","sourceRoot":"","sources":["../../../src/bridge/utils/tokenMath.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiBpE;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMtE;AAQD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,SAAI,GAAG,MAAM,CAkBzE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAK/D"}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Token Metadata Resolver
|
|
3
|
-
*
|
|
4
|
-
* Shared utility for resolving bridge token metadata.
|
|
5
|
-
* Used by both EthereumBridgeStrategy and SolanaBridgeStrategy.
|
|
6
|
-
*
|
|
7
|
-
* @module bridge/utils/tokenMetadataResolver
|
|
8
|
-
*/
|
|
9
|
-
import type { GalaConnectClient } from '../GalaConnectClient.js';
|
|
10
|
-
import type { BridgeTokenMetadata } from '../types/index.js';
|
|
11
|
-
/**
|
|
12
|
-
* Configuration for TokenMetadataResolver
|
|
13
|
-
*/
|
|
14
|
-
export interface TokenMetadataResolverConfig {
|
|
15
|
-
/** GalaConnect client for API lookups */
|
|
16
|
-
galaConnectClient: GalaConnectClient;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Token Metadata Resolver
|
|
20
|
-
*
|
|
21
|
-
* Provides cached token metadata resolution with fallback to API lookup.
|
|
22
|
-
* This consolidates duplicate `getTokenMetadata()` implementations from
|
|
23
|
-
* EthereumBridgeStrategy and SolanaBridgeStrategy.
|
|
24
|
-
*
|
|
25
|
-
* Resolution order:
|
|
26
|
-
* 1. In-memory cache (fastest)
|
|
27
|
-
* 2. Static metadata for well-known tokens (GALA, GWETH, etc.)
|
|
28
|
-
* 3. GalaConnect API lookup (slowest, cached after)
|
|
29
|
-
*
|
|
30
|
-
* @example
|
|
31
|
-
* ```typescript
|
|
32
|
-
* const resolver = new TokenMetadataResolver({
|
|
33
|
-
* galaConnectClient: client,
|
|
34
|
-
* });
|
|
35
|
-
*
|
|
36
|
-
* const metadata = await resolver.getTokenMetadata('GALA');
|
|
37
|
-
* console.log(metadata.decimals); // 8
|
|
38
|
-
* ```
|
|
39
|
-
*/
|
|
40
|
-
export declare class TokenMetadataResolver {
|
|
41
|
-
private readonly galaConnectClient;
|
|
42
|
-
private readonly cache;
|
|
43
|
-
constructor(config: TokenMetadataResolverConfig);
|
|
44
|
-
/**
|
|
45
|
-
* Get token metadata for a symbol.
|
|
46
|
-
*
|
|
47
|
-
* Checks cache first, then static metadata, then API.
|
|
48
|
-
* Results are cached for subsequent lookups.
|
|
49
|
-
*
|
|
50
|
-
* @param symbol - Token symbol (e.g., 'GALA', 'GWETH', 'GUSDC')
|
|
51
|
-
* @returns Token metadata including descriptor and decimals
|
|
52
|
-
* @throws Error if token metadata cannot be found
|
|
53
|
-
*
|
|
54
|
-
* @example
|
|
55
|
-
* ```typescript
|
|
56
|
-
* const metadata = await resolver.getTokenMetadata('GALA');
|
|
57
|
-
* // Returns: { descriptor: { collection: 'GALA', ... }, decimals: 8, channel: 'asset' }
|
|
58
|
-
* ```
|
|
59
|
-
*/
|
|
60
|
-
getTokenMetadata(symbol: string): Promise<BridgeTokenMetadata>;
|
|
61
|
-
/**
|
|
62
|
-
* Check if metadata is available for a symbol (without API call).
|
|
63
|
-
*
|
|
64
|
-
* Only checks cache and static metadata.
|
|
65
|
-
*
|
|
66
|
-
* @param symbol - Token symbol to check
|
|
67
|
-
* @returns True if metadata is already available
|
|
68
|
-
*/
|
|
69
|
-
hasMetadata(symbol: string): boolean;
|
|
70
|
-
/**
|
|
71
|
-
* Clear the metadata cache.
|
|
72
|
-
*
|
|
73
|
-
* Useful for testing or refreshing stale data.
|
|
74
|
-
*/
|
|
75
|
-
clearCache(): void;
|
|
76
|
-
/**
|
|
77
|
-
* Fetch token metadata from GalaConnect API.
|
|
78
|
-
*
|
|
79
|
-
* Matches the exact symbol only. A symbol is never rewritten (no "USDC" -> "GUSDC" guessing);
|
|
80
|
-
* the class key comes from the matched API entry.
|
|
81
|
-
*
|
|
82
|
-
* @param symbol - Token symbol to look up
|
|
83
|
-
* @returns Token metadata
|
|
84
|
-
* @throws Error if token not found in API
|
|
85
|
-
*/
|
|
86
|
-
private fetchFromApi;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Create a TokenMetadataResolver instance.
|
|
90
|
-
*
|
|
91
|
-
* Factory function for convenience.
|
|
92
|
-
*
|
|
93
|
-
* @param galaConnectClient - GalaConnect client for API lookups
|
|
94
|
-
* @returns Configured TokenMetadataResolver
|
|
95
|
-
*/
|
|
96
|
-
export declare function createTokenMetadataResolver(galaConnectClient: GalaConnectClient): TokenMetadataResolver;
|
|
97
|
-
//# sourceMappingURL=tokenMetadataResolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tokenMetadataResolver.d.ts","sourceRoot":"","sources":["../../../src/bridge/utils/tokenMetadataResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,yCAAyC;IACzC,iBAAiB,EAAE,iBAAiB,CAAC;CACtC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0C;gBAEpD,MAAM,EAAE,2BAA2B;IAI/C;;;;;;;;;;;;;;;OAeG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAuBpE;;;;;;;OAOG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAKpC;;;;OAIG;IACH,UAAU,IAAI,IAAI;IAIlB;;;;;;;;;OASG;YACW,YAAY;CAqB3B;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CACzC,iBAAiB,EAAE,iBAAiB,GACnC,qBAAqB,CAEvB"}
|
package/dist/helpers/wallet.d.ts
DELETED
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Wallet creation helper functions
|
|
3
|
-
*
|
|
4
|
-
* Provides convenient functions for creating wallets with auto-detection
|
|
5
|
-
* of input formats (private key vs mnemonic phrase).
|
|
6
|
-
*/
|
|
7
|
-
import type { GeneratedWallet } from '../utils/wallet';
|
|
8
|
-
/**
|
|
9
|
-
* Creates a wallet with smart input detection
|
|
10
|
-
*
|
|
11
|
-
* Automatically detects whether the input is a private key or mnemonic phrase,
|
|
12
|
-
* and creates the appropriate wallet. If no input is provided, generates a new
|
|
13
|
-
* random wallet.
|
|
14
|
-
*
|
|
15
|
-
* @param input Optional wallet creation input
|
|
16
|
-
* - No input: Creates a new random wallet
|
|
17
|
-
* - 64 hex characters (with/without 0x): Treated as private key
|
|
18
|
-
* - 12 or 24 space-separated words: Treated as mnemonic phrase
|
|
19
|
-
* @returns Generated wallet with all necessary information
|
|
20
|
-
*
|
|
21
|
-
* @example
|
|
22
|
-
* ```typescript
|
|
23
|
-
* import { createWallet } from '@gala-chain/launchpad-sdk';
|
|
24
|
-
*
|
|
25
|
-
* // Generate new random wallet
|
|
26
|
-
* const newWallet = createWallet();
|
|
27
|
-
*
|
|
28
|
-
* // From private key
|
|
29
|
-
* const pkWallet = createWallet('0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12');
|
|
30
|
-
*
|
|
31
|
-
* // From mnemonic
|
|
32
|
-
* const mnemonicWallet = createWallet('word1 word2 word3 word4 word5 word6 word7 word8 word9 word10 word11 word12');
|
|
33
|
-
*
|
|
34
|
-
* // Use with SDK
|
|
35
|
-
* const sdk = new LaunchpadSDK({ wallet: newWallet.wallet });
|
|
36
|
-
* ```
|
|
37
|
-
*/
|
|
38
|
-
export declare function createWallet(input?: string): GeneratedWallet;
|
|
39
|
-
/**
|
|
40
|
-
* Validates wallet input format without creating wallet
|
|
41
|
-
*
|
|
42
|
-
* @param input Input to validate
|
|
43
|
-
* @returns Object with validation result and detected format
|
|
44
|
-
*
|
|
45
|
-
* @example
|
|
46
|
-
* ```typescript
|
|
47
|
-
* const result = validateWalletInput('0x1234...');
|
|
48
|
-
* if (result.valid) {
|
|
49
|
-
* console.log(`Detected format: ${result.format}`);
|
|
50
|
-
* } else {
|
|
51
|
-
* console.log(`Validation error: ${result.error}`);
|
|
52
|
-
* }
|
|
53
|
-
* ```
|
|
54
|
-
*/
|
|
55
|
-
export declare function validateWalletInput(input: string): {
|
|
56
|
-
valid: boolean;
|
|
57
|
-
format?: 'private_key' | 'mnemonic' | 'random';
|
|
58
|
-
error?: string;
|
|
59
|
-
};
|
|
60
|
-
/**
|
|
61
|
-
* Result of public key derivation containing both formats
|
|
62
|
-
*/
|
|
63
|
-
export interface PublicKeyResult {
|
|
64
|
-
/** Uncompressed public key (0x04... format, 132 characters) */
|
|
65
|
-
publicKey: string;
|
|
66
|
-
/** Compressed public key (0x02/03... format, 68 characters) */
|
|
67
|
-
compressedPublicKey: string;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Derive public key from private key using secp256k1 elliptic curve.
|
|
71
|
-
*
|
|
72
|
-
* Returns both uncompressed and compressed formats of the public key.
|
|
73
|
-
* Uses ethers.js SigningKey for cryptographic operations.
|
|
74
|
-
*
|
|
75
|
-
* @param privateKey - Private key (0x-prefixed 64 hex characters)
|
|
76
|
-
* @returns Public key in both uncompressed and compressed formats
|
|
77
|
-
* @throws Error if private key format is invalid
|
|
78
|
-
*
|
|
79
|
-
* @example
|
|
80
|
-
* ```typescript
|
|
81
|
-
* import { getPublicKeyFromPrivateKey } from '@gala-chain/launchpad-sdk';
|
|
82
|
-
*
|
|
83
|
-
* const result = getPublicKeyFromPrivateKey('0x1234567890abcdef...');
|
|
84
|
-
* console.log(result.publicKey); // 0x04... (132 chars, uncompressed)
|
|
85
|
-
* console.log(result.compressedPublicKey); // 0x02... or 0x03... (68 chars)
|
|
86
|
-
* ```
|
|
87
|
-
*/
|
|
88
|
-
export declare function getPublicKeyFromPrivateKey(privateKey: string): PublicKeyResult;
|
|
89
|
-
/**
|
|
90
|
-
* Derive Ethereum address from private key.
|
|
91
|
-
*
|
|
92
|
-
* Returns the standard Ethereum address in checksum format (0x...).
|
|
93
|
-
* This is the raw Ethereum address, NOT the GalaChain format (eth|...).
|
|
94
|
-
*
|
|
95
|
-
* @param privateKey - Private key (0x-prefixed 64 hex characters)
|
|
96
|
-
* @returns Ethereum address in checksum format (0x...)
|
|
97
|
-
* @throws Error if private key format is invalid
|
|
98
|
-
*
|
|
99
|
-
* @example
|
|
100
|
-
* ```typescript
|
|
101
|
-
* import { getEthereumAddressFromPrivateKey, toBackendAddressFormat } from '@gala-chain/launchpad-sdk';
|
|
102
|
-
*
|
|
103
|
-
* const address = getEthereumAddressFromPrivateKey('0x1234567890abcdef...');
|
|
104
|
-
* console.log(address); // "0x8Ba1f109551bD432803012645Ac136ddd64DBA72"
|
|
105
|
-
*
|
|
106
|
-
* // For GalaChain format, use toBackendAddressFormat:
|
|
107
|
-
* const galaChainAddress = toBackendAddressFormat(address);
|
|
108
|
-
* console.log(galaChainAddress); // "eth|8ba1f109551bd432803012645ac136ddd64dba72"
|
|
109
|
-
* ```
|
|
110
|
-
*/
|
|
111
|
-
export declare function getEthereumAddressFromPrivateKey(privateKey: string): string;
|
|
112
|
-
/**
|
|
113
|
-
* Generated Solana wallet information
|
|
114
|
-
*/
|
|
115
|
-
export interface GeneratedSolanaWallet {
|
|
116
|
-
/** Base58-encoded 64-byte secret key (used for signing) */
|
|
117
|
-
privateKey: string;
|
|
118
|
-
/** Base58-encoded 32-byte public key */
|
|
119
|
-
publicKey: string;
|
|
120
|
-
/** Solana address (same as publicKey - Solana addresses ARE public keys) */
|
|
121
|
-
address: string;
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Creates a new random Solana wallet.
|
|
125
|
-
*
|
|
126
|
-
* Generates a new Ed25519 keypair suitable for use with Solana.
|
|
127
|
-
* The private key is returned in base58 format, compatible with
|
|
128
|
-
* the SDK's bridge operations.
|
|
129
|
-
*
|
|
130
|
-
* @returns Generated Solana wallet with address and keys
|
|
131
|
-
*
|
|
132
|
-
* @example
|
|
133
|
-
* ```typescript
|
|
134
|
-
* import { createSolanaWallet } from '@gala-chain/launchpad-sdk';
|
|
135
|
-
*
|
|
136
|
-
* const wallet = createSolanaWallet();
|
|
137
|
-
* console.log(wallet.address); // Base58 public key (e.g., "7Vbmv1jt4v...")
|
|
138
|
-
* console.log(wallet.privateKey); // Base58 secret key for signing
|
|
139
|
-
*
|
|
140
|
-
* // Use with bridge operations
|
|
141
|
-
* const sdk = new LaunchpadSDK({ privateKey: ethPrivateKey });
|
|
142
|
-
* await sdk.bridgeIn({
|
|
143
|
-
* tokenId: 'GALA|Unit|none|none',
|
|
144
|
-
* amount: '100',
|
|
145
|
-
* sourceChain: 'Solana',
|
|
146
|
-
* solanaPrivateKey: wallet.privateKey,
|
|
147
|
-
* });
|
|
148
|
-
* ```
|
|
149
|
-
*/
|
|
150
|
-
export declare function createSolanaWallet(): GeneratedSolanaWallet;
|
|
151
|
-
//# sourceMappingURL=wallet.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/helpers/wallet.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,eAAe,CA6B5D;AAmCD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG;IAClD,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAwBA;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CAe9E;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,gCAAgC,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAU3E;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,kBAAkB,IAAI,qBAAqB,CAQ1D"}
|