@perpx/js-sdk 0.0.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/LICENSE +13 -0
- package/README.md +97 -0
- package/build/cjs/__tests__/clients/composite-client.test.js +130 -0
- package/build/cjs/__tests__/helpers/baseClients.js +29 -0
- package/build/cjs/__tests__/helpers/constants.js +110 -0
- package/build/cjs/__tests__/lib/helpers.test.js +45 -0
- package/build/cjs/__tests__/lib/util.test.js +67 -0
- package/build/cjs/__tests__/lib/validation.test.js +254 -0
- package/build/cjs/__tests__/modules/client/AccountEndpoints.test.js +186 -0
- package/build/cjs/__tests__/modules/client/FaucetEndpoint.test.js +15 -0
- package/build/cjs/__tests__/modules/client/MarketsEndpoints.test.js +69 -0
- package/build/cjs/__tests__/modules/client/Transfers.test.js +69 -0
- package/build/cjs/__tests__/modules/client/UtilityEndpoints.test.js +28 -0
- package/build/cjs/__tests__/modules/client/ValidatorGetEndpoints.test.js +46 -0
- package/build/cjs/__tests__/modules/client/ValidatorPostEndpoints.test.js +61 -0
- package/build/cjs/__tests__/modules/client/constants.js +7 -0
- package/build/cjs/__tests__/modules/onboarding.test.js +51 -0
- package/build/cjs/examples/account_endpoints.js +129 -0
- package/build/cjs/examples/batch_cancel_orders_example.js +93 -0
- package/build/cjs/examples/composite_example.js +50 -0
- package/build/cjs/examples/constants.js +35 -0
- package/build/cjs/examples/faucet_endpoint.js +23 -0
- package/build/cjs/examples/gov_add_new_market.js +77 -0
- package/build/cjs/examples/human_readable_orders.json +86 -0
- package/build/cjs/examples/human_readable_short_term_orders.json +42 -0
- package/build/cjs/examples/json-encoding.js +32 -0
- package/build/cjs/examples/long_term_order_cancel_example.js +63 -0
- package/build/cjs/examples/markets_endpoints.js +134 -0
- package/build/cjs/examples/native_examples.js +112 -0
- package/build/cjs/examples/noble_example.js +88 -0
- package/build/cjs/examples/optimal_node.js +70 -0
- package/build/cjs/examples/permissioned_keys_example.js +104 -0
- package/build/cjs/examples/raw_orders.json +130 -0
- package/build/cjs/examples/short_term_order_cancel_example.js +54 -0
- package/build/cjs/examples/short_term_order_composite_example.js +68 -0
- package/build/cjs/examples/test.js +50 -0
- package/build/cjs/examples/transfer_example_deposit.js +29 -0
- package/build/cjs/examples/transfer_example_send.js +42 -0
- package/build/cjs/examples/transfer_example_subaccount_transfer.js +29 -0
- package/build/cjs/examples/transfer_example_withdraw.js +30 -0
- package/build/cjs/examples/transfer_example_withdraw_other.js +42 -0
- package/build/cjs/examples/utility_endpoints.js +42 -0
- package/build/cjs/examples/validator_get_example.js +158 -0
- package/build/cjs/examples/validator_post_example.js +76 -0
- package/build/cjs/examples/wallet_address.js +22 -0
- package/build/cjs/examples/websocket_example.js +36 -0
- package/build/cjs/examples/websocket_orderbook_example.js +196 -0
- package/build/cjs/package.json +1 -0
- package/build/cjs/src/clients/composite-client.js +839 -0
- package/build/cjs/src/clients/constants.js +288 -0
- package/build/cjs/src/clients/faucet-client.js +36 -0
- package/build/cjs/src/clients/helpers/chain-helpers.js +178 -0
- package/build/cjs/src/clients/helpers/request-helpers.js +65 -0
- package/build/cjs/src/clients/indexer-client.js +56 -0
- package/build/cjs/src/clients/lib/axios/axiosRequest.js +34 -0
- package/build/cjs/src/clients/lib/axios/errors.js +28 -0
- package/build/cjs/src/clients/lib/axios/index.js +23 -0
- package/build/cjs/src/clients/lib/axios/types.js +11 -0
- package/build/cjs/src/clients/lib/cctpProto.js +3242 -0
- package/build/cjs/src/clients/lib/errors.js +58 -0
- package/build/cjs/src/clients/lib/registry.js +52 -0
- package/build/cjs/src/clients/modules/account.js +223 -0
- package/build/cjs/src/clients/modules/composer.js +419 -0
- package/build/cjs/src/clients/modules/get.js +442 -0
- package/build/cjs/src/clients/modules/local-wallet.js +82 -0
- package/build/cjs/src/clients/modules/markets.js +54 -0
- package/build/cjs/src/clients/modules/post.js +412 -0
- package/build/cjs/src/clients/modules/proto-includes.js +69 -0
- package/build/cjs/src/clients/modules/rest.js +41 -0
- package/build/cjs/src/clients/modules/signer.js +93 -0
- package/build/cjs/src/clients/modules/tendermintClient.js +137 -0
- package/build/cjs/src/clients/modules/utility.js +52 -0
- package/build/cjs/src/clients/modules/vault.js +25 -0
- package/build/cjs/src/clients/native.js +1330 -0
- package/build/cjs/src/clients/noble-client.js +96 -0
- package/build/cjs/src/clients/socket-client.js +304 -0
- package/build/cjs/src/clients/subaccount.js +45 -0
- package/build/cjs/src/clients/types.js +43 -0
- package/build/cjs/src/clients/validator-client.js +87 -0
- package/build/cjs/src/index.js +73 -0
- package/build/cjs/src/lib/constants.js +23 -0
- package/build/cjs/src/lib/errors.js +37 -0
- package/build/cjs/src/lib/helpers.js +108 -0
- package/build/cjs/src/lib/onboarding.js +75 -0
- package/build/cjs/src/lib/trading-key-utils.js +120 -0
- package/build/cjs/src/lib/utils.js +89 -0
- package/build/cjs/src/lib/validation.js +159 -0
- package/build/cjs/src/network_optimizer.js +109 -0
- package/build/cjs/src/types.js +25 -0
- package/build/cjs/tsconfig.cjs.tsbuildinfo +1 -0
- package/build/esm/__tests__/clients/composite-client.test.d.ts +2 -0
- package/build/esm/__tests__/clients/composite-client.test.d.ts.map +1 -0
- package/build/esm/__tests__/clients/composite-client.test.js +128 -0
- package/build/esm/__tests__/helpers/baseClients.d.ts +19 -0
- package/build/esm/__tests__/helpers/baseClients.d.ts.map +1 -0
- package/build/esm/__tests__/helpers/baseClients.js +22 -0
- package/build/esm/__tests__/helpers/constants.d.ts +19 -0
- package/build/esm/__tests__/helpers/constants.d.ts.map +1 -0
- package/build/esm/__tests__/helpers/constants.js +104 -0
- package/build/esm/__tests__/lib/helpers.test.d.ts +2 -0
- package/build/esm/__tests__/lib/helpers.test.d.ts.map +1 -0
- package/build/esm/__tests__/lib/helpers.test.js +40 -0
- package/build/esm/__tests__/lib/util.test.d.ts +2 -0
- package/build/esm/__tests__/lib/util.test.d.ts.map +1 -0
- package/build/esm/__tests__/lib/util.test.js +65 -0
- package/build/esm/__tests__/lib/validation.test.d.ts +2 -0
- package/build/esm/__tests__/lib/validation.test.d.ts.map +1 -0
- package/build/esm/__tests__/lib/validation.test.js +249 -0
- package/build/esm/__tests__/modules/client/AccountEndpoints.test.d.ts +2 -0
- package/build/esm/__tests__/modules/client/AccountEndpoints.test.d.ts.map +1 -0
- package/build/esm/__tests__/modules/client/AccountEndpoints.test.js +181 -0
- package/build/esm/__tests__/modules/client/FaucetEndpoint.test.d.ts +2 -0
- package/build/esm/__tests__/modules/client/FaucetEndpoint.test.d.ts.map +1 -0
- package/build/esm/__tests__/modules/client/FaucetEndpoint.test.js +13 -0
- package/build/esm/__tests__/modules/client/MarketsEndpoints.test.d.ts +2 -0
- package/build/esm/__tests__/modules/client/MarketsEndpoints.test.d.ts.map +1 -0
- package/build/esm/__tests__/modules/client/MarketsEndpoints.test.js +66 -0
- package/build/esm/__tests__/modules/client/Transfers.test.d.ts +2 -0
- package/build/esm/__tests__/modules/client/Transfers.test.d.ts.map +1 -0
- package/build/esm/__tests__/modules/client/Transfers.test.js +64 -0
- package/build/esm/__tests__/modules/client/UtilityEndpoints.test.d.ts +2 -0
- package/build/esm/__tests__/modules/client/UtilityEndpoints.test.d.ts.map +1 -0
- package/build/esm/__tests__/modules/client/UtilityEndpoints.test.js +26 -0
- package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.d.ts +2 -0
- package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.d.ts.map +1 -0
- package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.js +44 -0
- package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.d.ts +2 -0
- package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.d.ts.map +1 -0
- package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.js +56 -0
- package/build/esm/__tests__/modules/client/constants.d.ts +4 -0
- package/build/esm/__tests__/modules/client/constants.d.ts.map +1 -0
- package/build/esm/__tests__/modules/client/constants.js +4 -0
- package/build/esm/__tests__/modules/onboarding.test.d.ts +2 -0
- package/build/esm/__tests__/modules/onboarding.test.d.ts.map +1 -0
- package/build/esm/__tests__/modules/onboarding.test.js +49 -0
- package/build/esm/examples/account_endpoints.d.ts +5 -0
- package/build/esm/examples/account_endpoints.d.ts.map +1 -0
- package/build/esm/examples/account_endpoints.js +127 -0
- package/build/esm/examples/batch_cancel_orders_example.d.ts +2 -0
- package/build/esm/examples/batch_cancel_orders_example.d.ts.map +1 -0
- package/build/esm/examples/batch_cancel_orders_example.js +88 -0
- package/build/esm/examples/composite_example.d.ts +2 -0
- package/build/esm/examples/composite_example.d.ts.map +1 -0
- package/build/esm/examples/composite_example.js +45 -0
- package/build/esm/examples/constants.d.ts +13 -0
- package/build/esm/examples/constants.d.ts.map +1 -0
- package/build/esm/examples/constants.js +29 -0
- package/build/esm/examples/faucet_endpoint.d.ts +5 -0
- package/build/esm/examples/faucet_endpoint.d.ts.map +1 -0
- package/build/esm/examples/faucet_endpoint.js +21 -0
- package/build/esm/examples/gov_add_new_market.d.ts +2 -0
- package/build/esm/examples/gov_add_new_market.d.ts.map +1 -0
- package/build/esm/examples/gov_add_new_market.js +72 -0
- package/build/esm/examples/human_readable_orders.json +86 -0
- package/build/esm/examples/human_readable_short_term_orders.json +42 -0
- package/build/esm/examples/json-encoding.d.ts +2 -0
- package/build/esm/examples/json-encoding.d.ts.map +1 -0
- package/build/esm/examples/json-encoding.js +27 -0
- package/build/esm/examples/long_term_order_cancel_example.d.ts +2 -0
- package/build/esm/examples/long_term_order_cancel_example.d.ts.map +1 -0
- package/build/esm/examples/long_term_order_cancel_example.js +58 -0
- package/build/esm/examples/markets_endpoints.d.ts +5 -0
- package/build/esm/examples/markets_endpoints.d.ts.map +1 -0
- package/build/esm/examples/markets_endpoints.js +131 -0
- package/build/esm/examples/native_examples.d.ts +2 -0
- package/build/esm/examples/native_examples.d.ts.map +1 -0
- package/build/esm/examples/native_examples.js +110 -0
- package/build/esm/examples/noble_example.d.ts +2 -0
- package/build/esm/examples/noble_example.d.ts.map +1 -0
- package/build/esm/examples/noble_example.js +83 -0
- package/build/esm/examples/optimal_node.d.ts +2 -0
- package/build/esm/examples/optimal_node.d.ts.map +1 -0
- package/build/esm/examples/optimal_node.js +68 -0
- package/build/esm/examples/permissioned_keys_example.d.ts +2 -0
- package/build/esm/examples/permissioned_keys_example.d.ts.map +1 -0
- package/build/esm/examples/permissioned_keys_example.js +99 -0
- package/build/esm/examples/raw_orders.json +130 -0
- package/build/esm/examples/short_term_order_cancel_example.d.ts +2 -0
- package/build/esm/examples/short_term_order_cancel_example.d.ts.map +1 -0
- package/build/esm/examples/short_term_order_cancel_example.js +49 -0
- package/build/esm/examples/short_term_order_composite_example.d.ts +2 -0
- package/build/esm/examples/short_term_order_composite_example.d.ts.map +1 -0
- package/build/esm/examples/short_term_order_composite_example.js +63 -0
- package/build/esm/examples/test.d.ts +2 -0
- package/build/esm/examples/test.d.ts.map +1 -0
- package/build/esm/examples/test.js +45 -0
- package/build/esm/examples/transfer_example_deposit.d.ts +2 -0
- package/build/esm/examples/transfer_example_deposit.d.ts.map +1 -0
- package/build/esm/examples/transfer_example_deposit.js +24 -0
- package/build/esm/examples/transfer_example_send.d.ts +2 -0
- package/build/esm/examples/transfer_example_send.d.ts.map +1 -0
- package/build/esm/examples/transfer_example_send.js +37 -0
- package/build/esm/examples/transfer_example_subaccount_transfer.d.ts +2 -0
- package/build/esm/examples/transfer_example_subaccount_transfer.d.ts.map +1 -0
- package/build/esm/examples/transfer_example_subaccount_transfer.js +24 -0
- package/build/esm/examples/transfer_example_withdraw.d.ts +2 -0
- package/build/esm/examples/transfer_example_withdraw.d.ts.map +1 -0
- package/build/esm/examples/transfer_example_withdraw.js +25 -0
- package/build/esm/examples/transfer_example_withdraw_other.d.ts +2 -0
- package/build/esm/examples/transfer_example_withdraw_other.d.ts.map +1 -0
- package/build/esm/examples/transfer_example_withdraw_other.js +37 -0
- package/build/esm/examples/utility_endpoints.d.ts +5 -0
- package/build/esm/examples/utility_endpoints.d.ts.map +1 -0
- package/build/esm/examples/utility_endpoints.js +40 -0
- package/build/esm/examples/validator_get_example.d.ts +2 -0
- package/build/esm/examples/validator_get_example.d.ts.map +1 -0
- package/build/esm/examples/validator_get_example.js +156 -0
- package/build/esm/examples/validator_post_example.d.ts +2 -0
- package/build/esm/examples/validator_post_example.d.ts.map +1 -0
- package/build/esm/examples/validator_post_example.js +71 -0
- package/build/esm/examples/wallet_address.d.ts +2 -0
- package/build/esm/examples/wallet_address.d.ts.map +1 -0
- package/build/esm/examples/wallet_address.js +17 -0
- package/build/esm/examples/websocket_example.d.ts +2 -0
- package/build/esm/examples/websocket_example.d.ts.map +1 -0
- package/build/esm/examples/websocket_example.js +34 -0
- package/build/esm/examples/websocket_orderbook_example.d.ts +2 -0
- package/build/esm/examples/websocket_orderbook_example.d.ts.map +1 -0
- package/build/esm/examples/websocket_orderbook_example.js +194 -0
- package/build/esm/src/clients/composite-client.d.ts +457 -0
- package/build/esm/src/clients/composite-client.d.ts.map +1 -0
- package/build/esm/src/clients/composite-client.js +832 -0
- package/build/esm/src/clients/constants.d.ts +173 -0
- package/build/esm/src/clients/constants.d.ts.map +1 -0
- package/build/esm/src/clients/constants.js +264 -0
- package/build/esm/src/clients/faucet-client.d.ts +18 -0
- package/build/esm/src/clients/faucet-client.d.ts.map +1 -0
- package/build/esm/src/clients/faucet-client.js +29 -0
- package/build/esm/src/clients/helpers/chain-helpers.d.ts +15 -0
- package/build/esm/src/clients/helpers/chain-helpers.d.ts.map +1 -0
- package/build/esm/src/clients/helpers/chain-helpers.js +163 -0
- package/build/esm/src/clients/helpers/request-helpers.d.ts +3 -0
- package/build/esm/src/clients/helpers/request-helpers.d.ts.map +1 -0
- package/build/esm/src/clients/helpers/request-helpers.js +58 -0
- package/build/esm/src/clients/indexer-client.d.ts +40 -0
- package/build/esm/src/clients/indexer-client.d.ts.map +1 -0
- package/build/esm/src/clients/indexer-client.js +49 -0
- package/build/esm/src/clients/lib/axios/axiosRequest.d.ts +9 -0
- package/build/esm/src/clients/lib/axios/axiosRequest.d.ts.map +1 -0
- package/build/esm/src/clients/lib/axios/axiosRequest.js +28 -0
- package/build/esm/src/clients/lib/axios/errors.d.ts +31 -0
- package/build/esm/src/clients/lib/axios/errors.d.ts.map +1 -0
- package/build/esm/src/clients/lib/axios/errors.js +23 -0
- package/build/esm/src/clients/lib/axios/index.d.ts +7 -0
- package/build/esm/src/clients/lib/axios/index.d.ts.map +1 -0
- package/build/esm/src/clients/lib/axios/index.js +7 -0
- package/build/esm/src/clients/lib/axios/types.d.ts +12 -0
- package/build/esm/src/clients/lib/axios/types.d.ts.map +1 -0
- package/build/esm/src/clients/lib/axios/types.js +8 -0
- package/build/esm/src/clients/lib/cctpProto.d.ts +670 -0
- package/build/esm/src/clients/lib/cctpProto.d.ts.map +1 -0
- package/build/esm/src/clients/lib/cctpProto.js +3234 -0
- package/build/esm/src/clients/lib/errors.d.ts +36 -0
- package/build/esm/src/clients/lib/errors.d.ts.map +1 -0
- package/build/esm/src/clients/lib/errors.js +50 -0
- package/build/esm/src/clients/lib/registry.d.ts +4 -0
- package/build/esm/src/clients/lib/registry.d.ts.map +1 -0
- package/build/esm/src/clients/lib/registry.js +48 -0
- package/build/esm/src/clients/modules/account.d.ts +30 -0
- package/build/esm/src/clients/modules/account.d.ts.map +1 -0
- package/build/esm/src/clients/modules/account.js +217 -0
- package/build/esm/src/clients/modules/composer.d.ts +38 -0
- package/build/esm/src/clients/modules/composer.d.ts.map +1 -0
- package/build/esm/src/clients/modules/composer.js +412 -0
- package/build/esm/src/clients/modules/get.d.ts +199 -0
- package/build/esm/src/clients/modules/get.d.ts.map +1 -0
- package/build/esm/src/clients/modules/get.js +402 -0
- package/build/esm/src/clients/modules/local-wallet.d.ts +42 -0
- package/build/esm/src/clients/modules/local-wallet.d.ts.map +1 -0
- package/build/esm/src/clients/modules/local-wallet.js +76 -0
- package/build/esm/src/clients/modules/markets.d.ts +14 -0
- package/build/esm/src/clients/modules/markets.d.ts.map +1 -0
- package/build/esm/src/clients/modules/markets.js +48 -0
- package/build/esm/src/clients/modules/post.d.ts +137 -0
- package/build/esm/src/clients/modules/post.d.ts.map +1 -0
- package/build/esm/src/clients/modules/post.js +405 -0
- package/build/esm/src/clients/modules/proto-includes.d.ts +30 -0
- package/build/esm/src/clients/modules/proto-includes.d.ts.map +1 -0
- package/build/esm/src/clients/modules/proto-includes.js +30 -0
- package/build/esm/src/clients/modules/rest.d.ts +13 -0
- package/build/esm/src/clients/modules/rest.d.ts.map +1 -0
- package/build/esm/src/clients/modules/rest.js +35 -0
- package/build/esm/src/clients/modules/signer.d.ts +19 -0
- package/build/esm/src/clients/modules/signer.d.ts.map +1 -0
- package/build/esm/src/clients/modules/signer.js +86 -0
- package/build/esm/src/clients/modules/tendermintClient.d.ts +52 -0
- package/build/esm/src/clients/modules/tendermintClient.d.ts.map +1 -0
- package/build/esm/src/clients/modules/tendermintClient.js +133 -0
- package/build/esm/src/clients/modules/utility.d.ts +32 -0
- package/build/esm/src/clients/modules/utility.d.ts.map +1 -0
- package/build/esm/src/clients/modules/utility.js +46 -0
- package/build/esm/src/clients/modules/vault.d.ts +12 -0
- package/build/esm/src/clients/modules/vault.d.ts.map +1 -0
- package/build/esm/src/clients/modules/vault.js +19 -0
- package/build/esm/src/clients/native.d.ts +75 -0
- package/build/esm/src/clients/native.d.ts.map +1 -0
- package/build/esm/src/clients/native.js +1237 -0
- package/build/esm/src/clients/noble-client.d.ts +39 -0
- package/build/esm/src/clients/noble-client.d.ts.map +1 -0
- package/build/esm/src/clients/noble-client.js +92 -0
- package/build/esm/src/clients/socket-client.d.ts +149 -0
- package/build/esm/src/clients/socket-client.d.ts.map +1 -0
- package/build/esm/src/clients/socket-client.js +297 -0
- package/build/esm/src/clients/subaccount.d.ts +26 -0
- package/build/esm/src/clients/subaccount.d.ts.map +1 -0
- package/build/esm/src/clients/subaccount.js +41 -0
- package/build/esm/src/clients/types.d.ts +139 -0
- package/build/esm/src/clients/types.d.ts.map +1 -0
- package/build/esm/src/clients/types.js +26 -0
- package/build/esm/src/clients/validator-client.d.ts +41 -0
- package/build/esm/src/clients/validator-client.d.ts.map +1 -0
- package/build/esm/src/clients/validator-client.js +80 -0
- package/build/esm/src/index.d.ts +17 -0
- package/build/esm/src/index.d.ts.map +1 -0
- package/build/esm/src/index.js +19 -0
- package/build/esm/src/lib/constants.d.ts +13 -0
- package/build/esm/src/lib/constants.d.ts.map +1 -0
- package/build/esm/src/lib/constants.js +20 -0
- package/build/esm/src/lib/errors.d.ts +23 -0
- package/build/esm/src/lib/errors.d.ts.map +1 -0
- package/build/esm/src/lib/errors.js +31 -0
- package/build/esm/src/lib/helpers.d.ts +32 -0
- package/build/esm/src/lib/helpers.d.ts.map +1 -0
- package/build/esm/src/lib/helpers.js +98 -0
- package/build/esm/src/lib/onboarding.d.ts +46 -0
- package/build/esm/src/lib/onboarding.d.ts.map +1 -0
- package/build/esm/src/lib/onboarding.js +69 -0
- package/build/esm/src/lib/trading-key-utils.d.ts +37 -0
- package/build/esm/src/lib/trading-key-utils.d.ts.map +1 -0
- package/build/esm/src/lib/trading-key-utils.js +111 -0
- package/build/esm/src/lib/utils.d.ts +49 -0
- package/build/esm/src/lib/utils.d.ts.map +1 -0
- package/build/esm/src/lib/utils.js +79 -0
- package/build/esm/src/lib/validation.d.ts +35 -0
- package/build/esm/src/lib/validation.d.ts.map +1 -0
- package/build/esm/src/lib/validation.js +147 -0
- package/build/esm/src/network_optimizer.d.ts +21 -0
- package/build/esm/src/network_optimizer.d.ts.map +1 -0
- package/build/esm/src/network_optimizer.js +104 -0
- package/build/esm/src/types.d.ts +26 -0
- package/build/esm/src/types.d.ts.map +1 -0
- package/build/esm/src/types.js +8 -0
- package/build/esm/tsconfig.esm.tsbuildinfo +1 -0
- package/package.json +129 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { EncodeObject, Coin } from '@cosmjs/proto-signing';
|
|
2
|
+
import { DeliverTxResponse, GasPrice, StdFee, MsgTransferEncodeObject } from '@cosmjs/stargate';
|
|
3
|
+
import LocalWallet from './modules/local-wallet';
|
|
4
|
+
export declare class NobleClient {
|
|
5
|
+
private wallet?;
|
|
6
|
+
private restEndpoint;
|
|
7
|
+
private stargateClient?;
|
|
8
|
+
private defaultClientMemo?;
|
|
9
|
+
constructor(restEndpoint: string, defaultClientMemo?: string);
|
|
10
|
+
/**
|
|
11
|
+
* @description Whether the Noble client is connected to a signer.
|
|
12
|
+
*/
|
|
13
|
+
get isConnected(): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* @description Connect the client with a wallet signer.
|
|
16
|
+
*/
|
|
17
|
+
connect(wallet: LocalWallet): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* @description Get all balances for the connected wallet.
|
|
20
|
+
*/
|
|
21
|
+
getAccountBalances(): Promise<readonly Coin[]>;
|
|
22
|
+
/**
|
|
23
|
+
* @description Get the balance for a specific denom.
|
|
24
|
+
*/
|
|
25
|
+
getAccountBalance(denom: string): Promise<Coin>;
|
|
26
|
+
/**
|
|
27
|
+
* @description Send an IBC transfer message using the connected wallet.
|
|
28
|
+
*/
|
|
29
|
+
IBCTransfer(message: MsgTransferEncodeObject): Promise<DeliverTxResponse>;
|
|
30
|
+
/**
|
|
31
|
+
* @description Simulate, sign, and broadcast one or more messages.
|
|
32
|
+
*/
|
|
33
|
+
send(messages: EncodeObject[], gasPrice?: GasPrice, memo?: string): Promise<DeliverTxResponse>;
|
|
34
|
+
/**
|
|
35
|
+
* @description Simulate a transaction and return the fee estimate.
|
|
36
|
+
*/
|
|
37
|
+
simulateTransaction(messages: readonly EncodeObject[], gasPrice?: GasPrice, memo?: string): Promise<StdFee>;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=noble-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"noble-client.d.ts","sourceRoot":"","sources":["../../../../src/clients/noble-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAY,IAAI,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAEL,iBAAiB,EACjB,QAAQ,EACR,MAAM,EAGN,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,WAAW,MAAM,wBAAwB,CAAC;AAEjD,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAC,CAAwB;IAC/C,OAAO,CAAC,iBAAiB,CAAC,CAAS;gBAEvB,YAAY,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM;IAK5D;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBjD;;OAEG;IACH,kBAAkB,IAAI,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;IAO9C;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/C;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAK/E;;OAEG;IACG,IAAI,CACR,QAAQ,EAAE,YAAY,EAAE,EACxB,QAAQ,GAAE,QAA0C,EACpD,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,iBAAiB,CAAC;IAmB7B;;OAEG;IACG,mBAAmB,CACvB,QAAQ,EAAE,SAAS,YAAY,EAAE,EACjC,QAAQ,GAAE,QAA0C,EACpD,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC;CAanB"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { Registry } from '@cosmjs/proto-signing';
|
|
2
|
+
import { calculateFee, GasPrice, defaultRegistryTypes, SigningStargateClient, } from '@cosmjs/stargate';
|
|
3
|
+
import { GAS_MULTIPLIER } from './constants';
|
|
4
|
+
import { MsgDepositForBurn, MsgDepositForBurnWithCaller } from './lib/cctpProto';
|
|
5
|
+
export class NobleClient {
|
|
6
|
+
constructor(restEndpoint, defaultClientMemo) {
|
|
7
|
+
this.restEndpoint = restEndpoint;
|
|
8
|
+
this.defaultClientMemo = defaultClientMemo;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* @description Whether the Noble client is connected to a signer.
|
|
12
|
+
*/
|
|
13
|
+
get isConnected() {
|
|
14
|
+
return Boolean(this.stargateClient);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* @description Connect the client with a wallet signer.
|
|
18
|
+
*/
|
|
19
|
+
async connect(wallet) {
|
|
20
|
+
if ((wallet === null || wallet === void 0 ? void 0 : wallet.offlineSigner) === undefined) {
|
|
21
|
+
throw new Error('Wallet signer not found');
|
|
22
|
+
}
|
|
23
|
+
this.wallet = wallet;
|
|
24
|
+
this.stargateClient = await SigningStargateClient.connectWithSigner(this.restEndpoint, wallet.offlineSigner, {
|
|
25
|
+
registry: new Registry([
|
|
26
|
+
['/circle.cctp.v1.MsgDepositForBurn', MsgDepositForBurn],
|
|
27
|
+
['/circle.cctp.v1.MsgDepositForBurnWithCaller', MsgDepositForBurnWithCaller],
|
|
28
|
+
...defaultRegistryTypes,
|
|
29
|
+
]),
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* @description Get all balances for the connected wallet.
|
|
34
|
+
*/
|
|
35
|
+
getAccountBalances() {
|
|
36
|
+
var _a;
|
|
37
|
+
if (!this.stargateClient || ((_a = this.wallet) === null || _a === void 0 ? void 0 : _a.address) === undefined) {
|
|
38
|
+
throw new Error('stargateClient not initialized');
|
|
39
|
+
}
|
|
40
|
+
return this.stargateClient.getAllBalances(this.wallet.address);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* @description Get the balance for a specific denom.
|
|
44
|
+
*/
|
|
45
|
+
getAccountBalance(denom) {
|
|
46
|
+
var _a;
|
|
47
|
+
if (!this.stargateClient || ((_a = this.wallet) === null || _a === void 0 ? void 0 : _a.address) === undefined) {
|
|
48
|
+
throw new Error('stargateClient not initialized');
|
|
49
|
+
}
|
|
50
|
+
return this.stargateClient.getBalance(this.wallet.address, denom);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* @description Send an IBC transfer message using the connected wallet.
|
|
54
|
+
*/
|
|
55
|
+
async IBCTransfer(message) {
|
|
56
|
+
const tx = await this.send([message]);
|
|
57
|
+
return tx;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* @description Simulate, sign, and broadcast one or more messages.
|
|
61
|
+
*/
|
|
62
|
+
async send(messages, gasPrice = GasPrice.fromString('0.1uusdc'), memo) {
|
|
63
|
+
var _a;
|
|
64
|
+
if (!this.stargateClient) {
|
|
65
|
+
throw new Error('NobleClient stargateClient not initialized');
|
|
66
|
+
}
|
|
67
|
+
if (((_a = this.wallet) === null || _a === void 0 ? void 0 : _a.address) === undefined) {
|
|
68
|
+
throw new Error('NobleClient wallet not initialized');
|
|
69
|
+
}
|
|
70
|
+
// Simulate to get the gas estimate
|
|
71
|
+
const fee = await this.simulateTransaction(messages, gasPrice, memo !== null && memo !== void 0 ? memo : this.defaultClientMemo);
|
|
72
|
+
// Sign and broadcast the transaction
|
|
73
|
+
return this.stargateClient.signAndBroadcast(this.wallet.address, messages, fee, memo !== null && memo !== void 0 ? memo : this.defaultClientMemo);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* @description Simulate a transaction and return the fee estimate.
|
|
77
|
+
*/
|
|
78
|
+
async simulateTransaction(messages, gasPrice = GasPrice.fromString('0.1uusdc'), memo) {
|
|
79
|
+
var _a, _b;
|
|
80
|
+
if (!this.stargateClient) {
|
|
81
|
+
throw new Error('NobleClient stargateClient not initialized');
|
|
82
|
+
}
|
|
83
|
+
if (((_a = this.wallet) === null || _a === void 0 ? void 0 : _a.address) === undefined) {
|
|
84
|
+
throw new Error('NobleClient wallet not initialized');
|
|
85
|
+
}
|
|
86
|
+
// Get simulated response
|
|
87
|
+
const gasEstimate = await this.stargateClient.simulate((_b = this.wallet) === null || _b === void 0 ? void 0 : _b.address, messages, memo);
|
|
88
|
+
// Calculate and return the fee
|
|
89
|
+
return calculateFee(Math.floor(gasEstimate * GAS_MULTIPLIER), gasPrice);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ibGUtY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NsaWVudHMvbm9ibGUtY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsUUFBUSxFQUFRLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUNMLFlBQVksRUFFWixRQUFRLEVBRVIsb0JBQW9CLEVBQ3BCLHFCQUFxQixHQUV0QixNQUFNLGtCQUFrQixDQUFDO0FBRTFCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLDJCQUEyQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHakYsTUFBTSxPQUFPLFdBQVc7SUFNdEIsWUFBWSxZQUFvQixFQUFFLGlCQUEwQjtRQUMxRCxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztRQUNqQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxXQUFXO1FBQ2IsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBbUI7UUFDL0IsSUFBSSxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxhQUFhLE1BQUssU0FBUyxFQUFFLENBQUM7WUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0scUJBQXFCLENBQUMsaUJBQWlCLENBQ2pFLElBQUksQ0FBQyxZQUFZLEVBQ2pCLE1BQU0sQ0FBQyxhQUFhLEVBQ3BCO1lBQ0UsUUFBUSxFQUFFLElBQUksUUFBUSxDQUFD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
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { ErrorEvent, MessageEvent } from 'ws';
|
|
2
|
+
import { IndexerConfig } from './constants';
|
|
3
|
+
export declare enum IncomingMessageTypes {
|
|
4
|
+
CONNECTED = "connected",
|
|
5
|
+
SUBSCRIBED = "subscribed",
|
|
6
|
+
ERROR = "error",
|
|
7
|
+
CHANNEL_DATA = "channel_data",
|
|
8
|
+
CHANNEL_BATCH_DATA = "channel_batch_data",
|
|
9
|
+
PONG = "pong"
|
|
10
|
+
}
|
|
11
|
+
export declare enum CandlesResolution {
|
|
12
|
+
ONE_MINUTE = "1MIN",
|
|
13
|
+
FIVE_MINUTES = "5MINS",
|
|
14
|
+
FIFTEEN_MINUTES = "15MINS",
|
|
15
|
+
THIRTY_MINUTES = "30MINS",
|
|
16
|
+
ONE_HOUR = "1HOUR",
|
|
17
|
+
FOUR_HOURS = "4HOURS",
|
|
18
|
+
ONE_DAY = "1DAY"
|
|
19
|
+
}
|
|
20
|
+
export declare class SocketClient {
|
|
21
|
+
private url;
|
|
22
|
+
private ws?;
|
|
23
|
+
private proxyAgent?;
|
|
24
|
+
private onOpenCallback?;
|
|
25
|
+
private onCloseCallback?;
|
|
26
|
+
private onMessageCallback?;
|
|
27
|
+
private onErrorCallback?;
|
|
28
|
+
private lastMessageTime;
|
|
29
|
+
constructor(config: IndexerConfig, onOpenCallback: () => void, onCloseCallback: () => void, onMessageCallback: (event: MessageEvent) => void, onErrorCallback: (event: ErrorEvent) => void);
|
|
30
|
+
/**
|
|
31
|
+
* @description Open the websocket connection.
|
|
32
|
+
*/
|
|
33
|
+
connect(): void;
|
|
34
|
+
/**
|
|
35
|
+
* @description Close the websocket connection.
|
|
36
|
+
*
|
|
37
|
+
*/
|
|
38
|
+
close(): void;
|
|
39
|
+
/**
|
|
40
|
+
* @description Check is the websocket connection connecting
|
|
41
|
+
*/
|
|
42
|
+
isConnecting(): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* @description Check is the websocket connection open
|
|
45
|
+
*/
|
|
46
|
+
isOpen(): boolean;
|
|
47
|
+
/**
|
|
48
|
+
* @description Check is the websocket connection closing
|
|
49
|
+
*/
|
|
50
|
+
isClosing(): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* @description Check is the websocket connection closed
|
|
53
|
+
*/
|
|
54
|
+
isClosed(): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* @description Send data to the websocket connection.
|
|
57
|
+
*
|
|
58
|
+
*/
|
|
59
|
+
send(data: string): void;
|
|
60
|
+
private handleOpen;
|
|
61
|
+
private handleClose;
|
|
62
|
+
private handleMessage;
|
|
63
|
+
private handleError;
|
|
64
|
+
/**
|
|
65
|
+
* @description Set callback when the socket is opened.
|
|
66
|
+
*
|
|
67
|
+
*/
|
|
68
|
+
set onOpen(callback: () => void);
|
|
69
|
+
/**
|
|
70
|
+
* @description Set callback when the socket is closed.
|
|
71
|
+
*
|
|
72
|
+
*/
|
|
73
|
+
set onClose(callback: () => void);
|
|
74
|
+
/**
|
|
75
|
+
* @description Set callback when the socket receives a message.
|
|
76
|
+
*
|
|
77
|
+
*/
|
|
78
|
+
set onMessage(callback: (event: MessageEvent) => void);
|
|
79
|
+
/**
|
|
80
|
+
* @description Set callback when the socket encounters an error.
|
|
81
|
+
*/
|
|
82
|
+
set onError(callback: (event: ErrorEvent) => void);
|
|
83
|
+
/**
|
|
84
|
+
* @description Send a subscribe message to the websocket connection.
|
|
85
|
+
*
|
|
86
|
+
*/
|
|
87
|
+
subscribe(channel: string, params?: object): void;
|
|
88
|
+
/**
|
|
89
|
+
* @description Send an unsubscribe message to the websocket connection.
|
|
90
|
+
*
|
|
91
|
+
*/
|
|
92
|
+
unsubscribe(channel: string, params?: object): void;
|
|
93
|
+
/**
|
|
94
|
+
* @description Subscribe to markets channel.
|
|
95
|
+
*
|
|
96
|
+
*/
|
|
97
|
+
subscribeToMarkets(): void;
|
|
98
|
+
/**
|
|
99
|
+
* @description Unsubscribe from markets channel
|
|
100
|
+
*
|
|
101
|
+
*/
|
|
102
|
+
unsubscribeFromMarkets(): void;
|
|
103
|
+
/**
|
|
104
|
+
* @description Subscribe to trade channel
|
|
105
|
+
* for a specific market.
|
|
106
|
+
*
|
|
107
|
+
*/
|
|
108
|
+
subscribeToTrades(market: string): void;
|
|
109
|
+
/**
|
|
110
|
+
* @description Unscribed from trade channel
|
|
111
|
+
* for a specific market.
|
|
112
|
+
*
|
|
113
|
+
*/
|
|
114
|
+
unsubscribeFromTrades(market: string): void;
|
|
115
|
+
/**
|
|
116
|
+
* @description Subscribe to orderbook channel
|
|
117
|
+
* for a specific market.
|
|
118
|
+
*
|
|
119
|
+
*/
|
|
120
|
+
subscribeToOrderbook(market: string): void;
|
|
121
|
+
/**
|
|
122
|
+
* @description Unsubscribe from orderbook channel
|
|
123
|
+
* for a specific market.
|
|
124
|
+
*/
|
|
125
|
+
unsubscribeFromOrderbook(market: string): void;
|
|
126
|
+
/**
|
|
127
|
+
* @description Subscribe to candles channel
|
|
128
|
+
* for a specific market and resolution.
|
|
129
|
+
*
|
|
130
|
+
*/
|
|
131
|
+
subscribeToCandles(market: string, resolution: CandlesResolution): void;
|
|
132
|
+
/**
|
|
133
|
+
* @description Unsubscribe from candles channel
|
|
134
|
+
* for a specific market and resolution.
|
|
135
|
+
*/
|
|
136
|
+
unsubscribeFromCandles(market: string, resolution: CandlesResolution): void;
|
|
137
|
+
/**
|
|
138
|
+
* @description Subscribe to subaccount channel
|
|
139
|
+
* for a specific address and subaccount number.
|
|
140
|
+
*/
|
|
141
|
+
subscribeToSubaccount(address: string, subaccountNumber: number): void;
|
|
142
|
+
/**
|
|
143
|
+
* @description Unsubscribe from subaccount channel
|
|
144
|
+
* for a specific address and subaccount number.
|
|
145
|
+
*
|
|
146
|
+
*/
|
|
147
|
+
unsubscribeFromSubaccount(address: string, subaccountNumber: number): void;
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=socket-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"socket-client.d.ts","sourceRoot":"","sources":["../../../../src/clients/socket-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
import WebSocket from 'ws';
|
|
2
|
+
import { getProxyAgent } from '../lib/utils';
|
|
3
|
+
var OutgoingMessageTypes;
|
|
4
|
+
(function (OutgoingMessageTypes) {
|
|
5
|
+
OutgoingMessageTypes["SUBSCRIBE"] = "subscribe";
|
|
6
|
+
OutgoingMessageTypes["UNSUBSCRIBE"] = "unsubscribe";
|
|
7
|
+
})(OutgoingMessageTypes || (OutgoingMessageTypes = {}));
|
|
8
|
+
var SocketChannels;
|
|
9
|
+
(function (SocketChannels) {
|
|
10
|
+
SocketChannels["SUBACCOUNTS"] = "v4_subaccounts";
|
|
11
|
+
SocketChannels["ORDERBOOK"] = "v4_orderbook";
|
|
12
|
+
SocketChannels["TRADES"] = "v4_trades";
|
|
13
|
+
SocketChannels["MARKETS"] = "v4_markets";
|
|
14
|
+
SocketChannels["CANDLES"] = "v4_candles";
|
|
15
|
+
})(SocketChannels || (SocketChannels = {}));
|
|
16
|
+
export var IncomingMessageTypes;
|
|
17
|
+
(function (IncomingMessageTypes) {
|
|
18
|
+
IncomingMessageTypes["CONNECTED"] = "connected";
|
|
19
|
+
IncomingMessageTypes["SUBSCRIBED"] = "subscribed";
|
|
20
|
+
IncomingMessageTypes["ERROR"] = "error";
|
|
21
|
+
IncomingMessageTypes["CHANNEL_DATA"] = "channel_data";
|
|
22
|
+
IncomingMessageTypes["CHANNEL_BATCH_DATA"] = "channel_batch_data";
|
|
23
|
+
IncomingMessageTypes["PONG"] = "pong";
|
|
24
|
+
})(IncomingMessageTypes || (IncomingMessageTypes = {}));
|
|
25
|
+
export var CandlesResolution;
|
|
26
|
+
(function (CandlesResolution) {
|
|
27
|
+
CandlesResolution["ONE_MINUTE"] = "1MIN";
|
|
28
|
+
CandlesResolution["FIVE_MINUTES"] = "5MINS";
|
|
29
|
+
CandlesResolution["FIFTEEN_MINUTES"] = "15MINS";
|
|
30
|
+
CandlesResolution["THIRTY_MINUTES"] = "30MINS";
|
|
31
|
+
CandlesResolution["ONE_HOUR"] = "1HOUR";
|
|
32
|
+
CandlesResolution["FOUR_HOURS"] = "4HOURS";
|
|
33
|
+
CandlesResolution["ONE_DAY"] = "1DAY";
|
|
34
|
+
})(CandlesResolution || (CandlesResolution = {}));
|
|
35
|
+
export class SocketClient {
|
|
36
|
+
constructor(config, onOpenCallback, onCloseCallback, onMessageCallback, onErrorCallback) {
|
|
37
|
+
this.lastMessageTime = Date.now();
|
|
38
|
+
this.url = config.websocketEndpoint;
|
|
39
|
+
this.proxyAgent = config.proxy ? getProxyAgent(config.proxy) : undefined;
|
|
40
|
+
this.onOpenCallback = onOpenCallback;
|
|
41
|
+
this.onCloseCallback = onCloseCallback;
|
|
42
|
+
this.onMessageCallback = onMessageCallback;
|
|
43
|
+
this.onErrorCallback = onErrorCallback;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* @description Open the websocket connection.
|
|
47
|
+
*/
|
|
48
|
+
connect() {
|
|
49
|
+
this.ws = new WebSocket(this.url, {
|
|
50
|
+
agent: this.proxyAgent,
|
|
51
|
+
});
|
|
52
|
+
this.ws.addEventListener('open', this.handleOpen.bind(this));
|
|
53
|
+
this.ws.addEventListener('close', this.handleClose.bind(this));
|
|
54
|
+
this.ws.addEventListener('message', this.handleMessage.bind(this));
|
|
55
|
+
this.ws.addEventListener('error', this.handleError.bind(this));
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* @description Close the websocket connection.
|
|
59
|
+
*
|
|
60
|
+
*/
|
|
61
|
+
close() {
|
|
62
|
+
var _a;
|
|
63
|
+
(_a = this.ws) === null || _a === void 0 ? void 0 : _a.close();
|
|
64
|
+
this.ws = undefined;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* @description Check is the websocket connection connecting
|
|
68
|
+
*/
|
|
69
|
+
isConnecting() {
|
|
70
|
+
var _a;
|
|
71
|
+
return ((_a = this.ws) === null || _a === void 0 ? void 0 : _a.readyState) === WebSocket.CONNECTING;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* @description Check is the websocket connection open
|
|
75
|
+
*/
|
|
76
|
+
isOpen() {
|
|
77
|
+
var _a;
|
|
78
|
+
return ((_a = this.ws) === null || _a === void 0 ? void 0 : _a.readyState) === WebSocket.OPEN;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* @description Check is the websocket connection closing
|
|
82
|
+
*/
|
|
83
|
+
isClosing() {
|
|
84
|
+
var _a;
|
|
85
|
+
return ((_a = this.ws) === null || _a === void 0 ? void 0 : _a.readyState) === WebSocket.CLOSING;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* @description Check is the websocket connection closed
|
|
89
|
+
*/
|
|
90
|
+
isClosed() {
|
|
91
|
+
var _a;
|
|
92
|
+
return ((_a = this.ws) === null || _a === void 0 ? void 0 : _a.readyState) === WebSocket.CLOSED;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* @description Send data to the websocket connection.
|
|
96
|
+
*
|
|
97
|
+
*/
|
|
98
|
+
send(data) {
|
|
99
|
+
var _a;
|
|
100
|
+
(_a = this.ws) === null || _a === void 0 ? void 0 : _a.send(data);
|
|
101
|
+
}
|
|
102
|
+
handleOpen() {
|
|
103
|
+
if (this.onOpenCallback) {
|
|
104
|
+
this.onOpenCallback();
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
handleClose() {
|
|
108
|
+
if (this.onCloseCallback) {
|
|
109
|
+
this.onCloseCallback();
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
handleMessage(event) {
|
|
113
|
+
if (event.data === 'PING') {
|
|
114
|
+
this.send('PONG');
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
this.lastMessageTime = Date.now();
|
|
118
|
+
if (this.onMessageCallback) {
|
|
119
|
+
this.onMessageCallback(event);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
handleError(event) {
|
|
124
|
+
if (this.onErrorCallback) {
|
|
125
|
+
this.onErrorCallback(event);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* @description Set callback when the socket is opened.
|
|
130
|
+
*
|
|
131
|
+
*/
|
|
132
|
+
set onOpen(callback) {
|
|
133
|
+
this.onOpenCallback = callback;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* @description Set callback when the socket is closed.
|
|
137
|
+
*
|
|
138
|
+
*/
|
|
139
|
+
set onClose(callback) {
|
|
140
|
+
this.onCloseCallback = callback;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* @description Set callback when the socket receives a message.
|
|
144
|
+
*
|
|
145
|
+
*/
|
|
146
|
+
set onMessage(callback) {
|
|
147
|
+
this.onMessageCallback = callback;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* @description Set callback when the socket encounters an error.
|
|
151
|
+
*/
|
|
152
|
+
set onError(callback) {
|
|
153
|
+
this.onErrorCallback = callback;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* @description Send a subscribe message to the websocket connection.
|
|
157
|
+
*
|
|
158
|
+
*/
|
|
159
|
+
subscribe(channel, params) {
|
|
160
|
+
const message = {
|
|
161
|
+
type: OutgoingMessageTypes.SUBSCRIBE,
|
|
162
|
+
channel,
|
|
163
|
+
...params,
|
|
164
|
+
};
|
|
165
|
+
this.send(JSON.stringify(message));
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* @description Send an unsubscribe message to the websocket connection.
|
|
169
|
+
*
|
|
170
|
+
*/
|
|
171
|
+
unsubscribe(channel, params) {
|
|
172
|
+
const message = {
|
|
173
|
+
type: OutgoingMessageTypes.UNSUBSCRIBE,
|
|
174
|
+
channel,
|
|
175
|
+
...params,
|
|
176
|
+
};
|
|
177
|
+
this.send(JSON.stringify(message));
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* @description Subscribe to markets channel.
|
|
181
|
+
*
|
|
182
|
+
*/
|
|
183
|
+
subscribeToMarkets() {
|
|
184
|
+
const channel = SocketChannels.MARKETS;
|
|
185
|
+
const params = {
|
|
186
|
+
batched: true,
|
|
187
|
+
};
|
|
188
|
+
this.subscribe(channel, params);
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* @description Unsubscribe from markets channel
|
|
192
|
+
*
|
|
193
|
+
*/
|
|
194
|
+
unsubscribeFromMarkets() {
|
|
195
|
+
const channel = SocketChannels.MARKETS;
|
|
196
|
+
this.unsubscribe(channel);
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* @description Subscribe to trade channel
|
|
200
|
+
* for a specific market.
|
|
201
|
+
*
|
|
202
|
+
*/
|
|
203
|
+
subscribeToTrades(market) {
|
|
204
|
+
const channel = SocketChannels.TRADES;
|
|
205
|
+
const params = {
|
|
206
|
+
id: market,
|
|
207
|
+
batched: true,
|
|
208
|
+
};
|
|
209
|
+
this.subscribe(channel, params);
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* @description Unscribed from trade channel
|
|
213
|
+
* for a specific market.
|
|
214
|
+
*
|
|
215
|
+
*/
|
|
216
|
+
unsubscribeFromTrades(market) {
|
|
217
|
+
const channel = SocketChannels.TRADES;
|
|
218
|
+
const params = {
|
|
219
|
+
id: market,
|
|
220
|
+
};
|
|
221
|
+
this.unsubscribe(channel, params);
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* @description Subscribe to orderbook channel
|
|
225
|
+
* for a specific market.
|
|
226
|
+
*
|
|
227
|
+
*/
|
|
228
|
+
subscribeToOrderbook(market) {
|
|
229
|
+
const channel = SocketChannels.ORDERBOOK;
|
|
230
|
+
const params = {
|
|
231
|
+
id: market,
|
|
232
|
+
batched: true,
|
|
233
|
+
};
|
|
234
|
+
this.subscribe(channel, params);
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* @description Unsubscribe from orderbook channel
|
|
238
|
+
* for a specific market.
|
|
239
|
+
*/
|
|
240
|
+
unsubscribeFromOrderbook(market) {
|
|
241
|
+
const channel = SocketChannels.ORDERBOOK;
|
|
242
|
+
const params = {
|
|
243
|
+
id: market,
|
|
244
|
+
};
|
|
245
|
+
this.unsubscribe(channel, params);
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* @description Subscribe to candles channel
|
|
249
|
+
* for a specific market and resolution.
|
|
250
|
+
*
|
|
251
|
+
*/
|
|
252
|
+
subscribeToCandles(market, resolution) {
|
|
253
|
+
const channel = SocketChannels.CANDLES;
|
|
254
|
+
const params = {
|
|
255
|
+
id: `${market}/${resolution}`,
|
|
256
|
+
batched: true,
|
|
257
|
+
};
|
|
258
|
+
this.subscribe(channel, params);
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* @description Unsubscribe from candles channel
|
|
262
|
+
* for a specific market and resolution.
|
|
263
|
+
*/
|
|
264
|
+
unsubscribeFromCandles(market, resolution) {
|
|
265
|
+
const channel = SocketChannels.CANDLES;
|
|
266
|
+
const params = {
|
|
267
|
+
id: `${market}/${resolution}`,
|
|
268
|
+
};
|
|
269
|
+
this.unsubscribe(channel, params);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* @description Subscribe to subaccount channel
|
|
273
|
+
* for a specific address and subaccount number.
|
|
274
|
+
*/
|
|
275
|
+
subscribeToSubaccount(address, subaccountNumber) {
|
|
276
|
+
const channel = SocketChannels.SUBACCOUNTS;
|
|
277
|
+
const subaccountId = `${address}/${subaccountNumber}`;
|
|
278
|
+
const params = {
|
|
279
|
+
id: subaccountId,
|
|
280
|
+
};
|
|
281
|
+
this.subscribe(channel, params);
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* @description Unsubscribe from subaccount channel
|
|
285
|
+
* for a specific address and subaccount number.
|
|
286
|
+
*
|
|
287
|
+
*/
|
|
288
|
+
unsubscribeFromSubaccount(address, subaccountNumber) {
|
|
289
|
+
const channel = SocketChannels.SUBACCOUNTS;
|
|
290
|
+
const subaccountId = `${address}/${subaccountNumber}`;
|
|
291
|
+
const params = {
|
|
292
|
+
id: subaccountId,
|
|
293
|
+
};
|
|
294
|
+
this.unsubscribe(channel, params);
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ja2V0LWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbGllbnRzL3NvY2tldC1jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxTQUF1QyxNQUFNLElBQUksQ0FBQztBQUV6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzdDLElBQUssb0JBR0o7QUFIRCxXQUFLLG9CQUFvQjtJQUN2QiwrQ0FBdUIsQ0FBQTtJQUN2QixtREFBMkIsQ0FBQTtBQUM3QixDQUFDLEVBSEksb0JBQW9CLEtBQXBCLG9CQUFvQixRQUd4QjtBQUVELElBQUssY0FNSjtBQU5ELFdBQUssY0FBYztJQUNqQixnREFBOEIsQ0FBQTtJQUM5Qiw0Q0FBMEIsQ0FBQTtJQUMxQixzQ0FBb0IsQ0FBQTtJQUNwQix3Q0FBc0IsQ0FBQTtJQUN0Qix3Q0FBc0IsQ0FBQTtBQUN4QixDQUFDLEVBTkksY0FBYyxLQUFkLGNBQWMsUUFNbEI7QUFFRCxNQUFNLENBQU4sSUFBWSxvQkFPWDtBQVBELFdBQVksb0JBQW9CO0lBQzlCLCtDQUF1QixDQUFBO0lBQ3ZCLGlEQUF5QixDQUFBO0lBQ3pCLHVDQUFlLENBQUE7SUFDZixxREFBNkIsQ0FBQTtJQUM3QixpRUFBeUMsQ0FBQTtJQUN6QyxxQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQVBXLG9CQUFvQixLQUFwQixvQkFBb0IsUUFPL0I7QUFFRCxNQUFNLENBQU4sSUFBWSxpQkFRWDtBQVJELFdBQVksaUJBQWlCO0lBQzNCLHdDQUFtQixDQUFBO0lBQ25CLDJDQUFzQixDQUFBO0lBQ3RCLCtDQUEwQixDQUFBO0lBQzFCLDhDQUF5QixDQUFBO0lBQ3pCLHVDQUFrQixDQUFBO0lBQ2xCLDBDQUFxQixDQUFBO0lBQ3JCLHFDQUFnQixDQUFBO0FBQ2xCLENBQUMsRUFSVyxpQkFBaUIsS0FBakIsaUJBQWlCLFFBUTVCO0FBRUQsTUFBTSxPQUFPLFlBQVk7SUFVdkIs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
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import Long from 'long';
|
|
2
|
+
import LocalWallet from './modules/local-wallet';
|
|
3
|
+
export declare class SubaccountInfo {
|
|
4
|
+
readonly address: string;
|
|
5
|
+
readonly subaccountNumber: number;
|
|
6
|
+
readonly signingWallet: LocalWallet;
|
|
7
|
+
readonly authenticators?: Long[];
|
|
8
|
+
private constructor();
|
|
9
|
+
/**
|
|
10
|
+
* @description Build SubaccountInfo for a locally owned wallet.
|
|
11
|
+
*/
|
|
12
|
+
static forLocalWallet(wallet: LocalWallet, subaccountNumber?: number): SubaccountInfo;
|
|
13
|
+
/**
|
|
14
|
+
* @description Build SubaccountInfo for a permissioned wallet setup.
|
|
15
|
+
*/
|
|
16
|
+
static forPermissionedWallet(signingWallet: LocalWallet, accountAddress: string, subaccountNumber: number | undefined, authenticators: Long[]): SubaccountInfo;
|
|
17
|
+
/**
|
|
18
|
+
* @description Whether the signing wallet differs from the account address.
|
|
19
|
+
*/
|
|
20
|
+
get isPermissionedWallet(): boolean;
|
|
21
|
+
/**
|
|
22
|
+
* @description Clone this subaccount with a different subaccount number.
|
|
23
|
+
*/
|
|
24
|
+
cloneWithSubaccount(subaccountNumber: number): SubaccountInfo;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=subaccount.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subaccount.d.ts","sourceRoot":"","sources":["../../../../src/clients/subaccount.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,WAAW,MAAM,wBAAwB,CAAC;AAEjD,qBAAa,cAAc;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC;IACpC,QAAQ,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC;IAEjC,OAAO;IAgBP;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,gBAAgB,GAAE,MAAU,GAAG,cAAc;IAQxF;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAC1B,aAAa,EAAE,WAAW,EAC1B,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,YAAI,EAC5B,cAAc,EAAE,IAAI,EAAE,GACrB,cAAc;IAIjB;;OAEG;IACH,IAAI,oBAAoB,IAAI,OAAO,CAElC;IAED;;OAEG;IACH,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,GAAG,cAAc;CAQ9D"}
|