@covalenthq/client-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/README.md +32 -0
- package/dist/ApprovalService.d.ts +59 -0
- package/dist/ApprovalService.js +56 -0
- package/dist/ApprovalService.js.map +1 -0
- package/dist/BalancesService.d.ts +204 -0
- package/dist/BalancesService.js +256 -0
- package/dist/BalancesService.js.map +1 -0
- package/dist/BaseService.d.ts +175 -0
- package/dist/BaseService.js +290 -0
- package/dist/BaseService.js.map +1 -0
- package/dist/Client.d.ts +24 -0
- package/dist/Client.js +30 -0
- package/dist/Client.js.map +1 -0
- package/dist/LogEventService.d.ts +62 -0
- package/dist/LogEventService.js +79 -0
- package/dist/LogEventService.js.map +1 -0
- package/dist/NameResolverService.d.ts +33 -0
- package/dist/NameResolverService.js +56 -0
- package/dist/NameResolverService.js.map +1 -0
- package/dist/NftService.d.ts +269 -0
- package/dist/NftService.js +474 -0
- package/dist/NftService.js.map +1 -0
- package/dist/PricingService.d.ts +52 -0
- package/dist/PricingService.js +69 -0
- package/dist/PricingService.js.map +1 -0
- package/dist/TransactionsService.d.ts +210 -0
- package/dist/TransactionsService.js +427 -0
- package/dist/TransactionsService.js.map +1 -0
- package/dist/XykService.d.ts +383 -0
- package/dist/XykService.js +421 -0
- package/dist/XykService.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/package.json +16 -0
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
interface BlockResponse {
|
|
2
|
+
updated_at: string;
|
|
3
|
+
chain_id: number;
|
|
4
|
+
chain_name: string;
|
|
5
|
+
items: Block[];
|
|
6
|
+
}
|
|
7
|
+
interface Block {
|
|
8
|
+
signed_at: string;
|
|
9
|
+
height: number;
|
|
10
|
+
}
|
|
11
|
+
interface BlockHeightsResponse {
|
|
12
|
+
updated_at: string;
|
|
13
|
+
chain_id: number;
|
|
14
|
+
chain_name: string;
|
|
15
|
+
items: Block[];
|
|
16
|
+
pagination: Pagination;
|
|
17
|
+
}
|
|
18
|
+
interface Pagination {
|
|
19
|
+
has_more: boolean;
|
|
20
|
+
page_number: number;
|
|
21
|
+
page_size: number;
|
|
22
|
+
total_count: number;
|
|
23
|
+
}
|
|
24
|
+
interface LogEventsByAddressResponse {
|
|
25
|
+
updated_at: string;
|
|
26
|
+
chain_id: number;
|
|
27
|
+
chain_name: string;
|
|
28
|
+
items: LogEvent[];
|
|
29
|
+
pagination: Pagination;
|
|
30
|
+
}
|
|
31
|
+
interface LogEvent {
|
|
32
|
+
block_signed_at: string;
|
|
33
|
+
block_height: number;
|
|
34
|
+
tx_offset: number;
|
|
35
|
+
log_offset: number;
|
|
36
|
+
tx_hash: string;
|
|
37
|
+
raw_log_topics: string;
|
|
38
|
+
sender_contract_decimals: number;
|
|
39
|
+
sender_name: string;
|
|
40
|
+
sender_contract_ticker_symbol: string;
|
|
41
|
+
sender_address: string;
|
|
42
|
+
sender_address_label: string;
|
|
43
|
+
sender_logo_url: string;
|
|
44
|
+
raw_log_data: string;
|
|
45
|
+
decoded: DecodedItem[];
|
|
46
|
+
}
|
|
47
|
+
interface DecodedItem {
|
|
48
|
+
name: string;
|
|
49
|
+
signature: string;
|
|
50
|
+
params: Param[];
|
|
51
|
+
}
|
|
52
|
+
interface Param {
|
|
53
|
+
name: string;
|
|
54
|
+
type: string;
|
|
55
|
+
indexed: boolean;
|
|
56
|
+
decoded: boolean;
|
|
57
|
+
value: string;
|
|
58
|
+
}
|
|
59
|
+
interface LogEventsByTopicHashResponse {
|
|
60
|
+
updated_at: string;
|
|
61
|
+
chain_id: number;
|
|
62
|
+
chain_name: string;
|
|
63
|
+
items: LogEvent[];
|
|
64
|
+
pagination: Pagination;
|
|
65
|
+
}
|
|
66
|
+
interface AllChainsResponse {
|
|
67
|
+
updated_at: string;
|
|
68
|
+
items: ChainItem[];
|
|
69
|
+
}
|
|
70
|
+
interface ChainItem {
|
|
71
|
+
name: string;
|
|
72
|
+
chain_id: string;
|
|
73
|
+
is_testnet: boolean;
|
|
74
|
+
db_schema_name: string;
|
|
75
|
+
label: string;
|
|
76
|
+
category_label: string;
|
|
77
|
+
logo_url: string;
|
|
78
|
+
black_logo_url: string;
|
|
79
|
+
white_logo_url: string;
|
|
80
|
+
is_appchain: boolean;
|
|
81
|
+
appchain_of: ChainItem;
|
|
82
|
+
}
|
|
83
|
+
interface AllChainsStatusResponse {
|
|
84
|
+
updated_at: string;
|
|
85
|
+
items: ChainStatusItem[];
|
|
86
|
+
}
|
|
87
|
+
interface ChainStatusItem {
|
|
88
|
+
name: string;
|
|
89
|
+
chain_id: string;
|
|
90
|
+
is_testnet: boolean;
|
|
91
|
+
logo_url: boolean;
|
|
92
|
+
synced_block_height: number;
|
|
93
|
+
synced_blocked_signed_at: string;
|
|
94
|
+
has_data: boolean;
|
|
95
|
+
}
|
|
96
|
+
interface ChainItem {
|
|
97
|
+
name: string;
|
|
98
|
+
chain_id: string;
|
|
99
|
+
is_testnet: boolean;
|
|
100
|
+
db_schema_name: string;
|
|
101
|
+
label: string;
|
|
102
|
+
category_label: string;
|
|
103
|
+
logo_url: string;
|
|
104
|
+
black_logo_url: string;
|
|
105
|
+
white_logo_url: string;
|
|
106
|
+
is_appchain: boolean;
|
|
107
|
+
appchain_of: ChainItem;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Class A - Base
|
|
111
|
+
*
|
|
112
|
+
*/
|
|
113
|
+
export interface Response<T> {
|
|
114
|
+
data: T;
|
|
115
|
+
error: boolean;
|
|
116
|
+
error_code: number;
|
|
117
|
+
error_message: string;
|
|
118
|
+
}
|
|
119
|
+
export declare class BaseService {
|
|
120
|
+
private apiKey;
|
|
121
|
+
constructor(apiKey: string);
|
|
122
|
+
/**
|
|
123
|
+
*
|
|
124
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
125
|
+
* @param {string} blockHeight - The block height or `latest` for the latest block available.
|
|
126
|
+
*
|
|
127
|
+
*/
|
|
128
|
+
getBlock(chainName: "btc-mainnet" | "eth-mainnet" | "matic-mainnet" | "bsc-mainnet" | "avalanche-mainnet" | "fantom-mainnet" | "moonbeam-mainnet" | "moonbeam-moonriver" | "rsk-mainnet" | "arbitrum-mainnet" | "palm-mainnet" | "klaytn-mainnet" | "heco-mainnet" | "nervos-godwoken-mainnet" | "axie-mainnet" | "evmos-mainnet" | "astar-mainnet" | "iotex-mainnet" | "harmony-mainnet" | "cronos-mainnet" | "aurora-mainnet" | "emerald-paratime-mainnet" | "boba-mainnet" | "eth-goerli" | "matic-mumbai" | "avalanche-testnet" | "bsc-testnet" | "moonbeam-moonbase-alpha" | "rsk-testnet" | "arbitrum-goerli" | "fantom-testnet" | "palm-testnet" | "heco-testnet" | "nervos-godwoken-testnet" | "evmos-testnet" | "astar-shiden" | "iotex-testnet" | "harmony-testnet" | "aurora-testnet" | "scroll-l2-testnet" | "scroll-l1-testnet" | "covalent-internal-network-v1" | "defi-kingdoms-mainnet" | "swimmer-mainnet" | "boba-avalanche-mainnet" | "boba-bobabeam-mainnet" | "boba-bnb-mainnet" | "boba-rinkeby-testnet" | "boba-bobabase-testnet" | "boba-bnb-testnet" | "boba-avalanche-testnet" | "klaytn-testnet" | "gather-mainnet" | "gather-testnet" | "optimism-mainnet" | "skale-calypso" | "skale-mainnet" | "skale-razor" | "avalanche-dexalot-mainnet" | "skale-omnus" | "avalanche-dexalot-testnet" | "astar-shibuya" | "cronos-testnet" | "defi-kingdoms-testnet" | "metis-mainnet" | "metis-testnet" | "milkomeda-a1-mainnet" | "milkomeda-a1-devnet" | "milkomeda-c1-mainnet" | "milkomeda-c1-devnet" | "swimmer-testnet" | "solana-mainnet" | "skale-europa" | "meter-mainnet" | "meter-testnet" | "skale-exorde" | "boba-goerli" | "neon-testnet" | "skale-staging-uum" | "skale-staging-lcc" | "arbitrum-nova-mainnet" | "canto-mainnet" | "bittorrent-mainnet" | "bittorrent-testnet" | "flarenetworks-flare-mainnet" | "flarenetworks-flare-testnet" | "flarenetworks-canary-mainnet" | "flarenetworks-canary-testnet" | "kcc-mainnet" | "kcc-testnet" | "polygon-zkevm-testnet" | "linea-testnet" | "base-testnet" | "mantle-testnet" | "scroll-alpha-testnet" | "oasys-mainnet" | "oasys-testnet" | "findora-mainnet" | "findora-forge-testnet" | "sx-mainnet", blockHeight: string): Promise<Response<BlockResponse>>;
|
|
129
|
+
/**
|
|
130
|
+
*
|
|
131
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
132
|
+
* @param {string} startDate - The start date in YYYY-MM-DD format.
|
|
133
|
+
* @param {string} endDate - The end date in YYYY-MM-DD format.
|
|
134
|
+
*
|
|
135
|
+
*/
|
|
136
|
+
getBlockHeights(chainName: "btc-mainnet" | "eth-mainnet" | "matic-mainnet" | "bsc-mainnet" | "avalanche-mainnet" | "fantom-mainnet" | "moonbeam-mainnet" | "moonbeam-moonriver" | "rsk-mainnet" | "arbitrum-mainnet" | "palm-mainnet" | "klaytn-mainnet" | "heco-mainnet" | "nervos-godwoken-mainnet" | "axie-mainnet" | "evmos-mainnet" | "astar-mainnet" | "iotex-mainnet" | "harmony-mainnet" | "cronos-mainnet" | "aurora-mainnet" | "emerald-paratime-mainnet" | "boba-mainnet" | "eth-goerli" | "matic-mumbai" | "avalanche-testnet" | "bsc-testnet" | "moonbeam-moonbase-alpha" | "rsk-testnet" | "arbitrum-goerli" | "fantom-testnet" | "palm-testnet" | "heco-testnet" | "nervos-godwoken-testnet" | "evmos-testnet" | "astar-shiden" | "iotex-testnet" | "harmony-testnet" | "aurora-testnet" | "scroll-l2-testnet" | "scroll-l1-testnet" | "covalent-internal-network-v1" | "defi-kingdoms-mainnet" | "swimmer-mainnet" | "boba-avalanche-mainnet" | "boba-bobabeam-mainnet" | "boba-bnb-mainnet" | "boba-rinkeby-testnet" | "boba-bobabase-testnet" | "boba-bnb-testnet" | "boba-avalanche-testnet" | "klaytn-testnet" | "gather-mainnet" | "gather-testnet" | "optimism-mainnet" | "skale-calypso" | "skale-mainnet" | "skale-razor" | "avalanche-dexalot-mainnet" | "skale-omnus" | "avalanche-dexalot-testnet" | "astar-shibuya" | "cronos-testnet" | "defi-kingdoms-testnet" | "metis-mainnet" | "metis-testnet" | "milkomeda-a1-mainnet" | "milkomeda-a1-devnet" | "milkomeda-c1-mainnet" | "milkomeda-c1-devnet" | "swimmer-testnet" | "solana-mainnet" | "skale-europa" | "meter-mainnet" | "meter-testnet" | "skale-exorde" | "boba-goerli" | "neon-testnet" | "skale-staging-uum" | "skale-staging-lcc" | "arbitrum-nova-mainnet" | "canto-mainnet" | "bittorrent-mainnet" | "bittorrent-testnet" | "flarenetworks-flare-mainnet" | "flarenetworks-flare-testnet" | "flarenetworks-canary-mainnet" | "flarenetworks-canary-testnet" | "kcc-mainnet" | "kcc-testnet" | "polygon-zkevm-testnet" | "linea-testnet" | "base-testnet" | "mantle-testnet" | "scroll-alpha-testnet" | "oasys-mainnet" | "oasys-testnet" | "findora-mainnet" | "findora-forge-testnet" | "sx-mainnet", startDate: string, endDate: string): Promise<Response<BlockHeightsResponse>>;
|
|
137
|
+
/**
|
|
138
|
+
*
|
|
139
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
140
|
+
* @param {string} contractAddress - The endpoint will return event logs emitted from this contract address. Passing in an `ENS`, `RNS`, or an `Unstoppable Domain` resolves automatically.
|
|
141
|
+
* @param {number} startingBlock - The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
142
|
+
* @param {string} endingBlock - The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
143
|
+
*
|
|
144
|
+
*/
|
|
145
|
+
getLogEventsByAddress(chainName: "btc-mainnet" | "eth-mainnet" | "matic-mainnet" | "bsc-mainnet" | "avalanche-mainnet" | "fantom-mainnet" | "moonbeam-mainnet" | "moonbeam-moonriver" | "rsk-mainnet" | "arbitrum-mainnet" | "palm-mainnet" | "klaytn-mainnet" | "heco-mainnet" | "nervos-godwoken-mainnet" | "axie-mainnet" | "evmos-mainnet" | "astar-mainnet" | "iotex-mainnet" | "harmony-mainnet" | "cronos-mainnet" | "aurora-mainnet" | "emerald-paratime-mainnet" | "boba-mainnet" | "eth-goerli" | "matic-mumbai" | "avalanche-testnet" | "bsc-testnet" | "moonbeam-moonbase-alpha" | "rsk-testnet" | "arbitrum-goerli" | "fantom-testnet" | "palm-testnet" | "heco-testnet" | "nervos-godwoken-testnet" | "evmos-testnet" | "astar-shiden" | "iotex-testnet" | "harmony-testnet" | "aurora-testnet" | "scroll-l2-testnet" | "scroll-l1-testnet" | "covalent-internal-network-v1" | "defi-kingdoms-mainnet" | "swimmer-mainnet" | "boba-avalanche-mainnet" | "boba-bobabeam-mainnet" | "boba-bnb-mainnet" | "boba-rinkeby-testnet" | "boba-bobabase-testnet" | "boba-bnb-testnet" | "boba-avalanche-testnet" | "klaytn-testnet" | "gather-mainnet" | "gather-testnet" | "optimism-mainnet" | "skale-calypso" | "skale-mainnet" | "skale-razor" | "avalanche-dexalot-mainnet" | "skale-omnus" | "avalanche-dexalot-testnet" | "astar-shibuya" | "cronos-testnet" | "defi-kingdoms-testnet" | "metis-mainnet" | "metis-testnet" | "milkomeda-a1-mainnet" | "milkomeda-a1-devnet" | "milkomeda-c1-mainnet" | "milkomeda-c1-devnet" | "swimmer-testnet" | "solana-mainnet" | "skale-europa" | "meter-mainnet" | "meter-testnet" | "skale-exorde" | "boba-goerli" | "neon-testnet" | "skale-staging-uum" | "skale-staging-lcc" | "arbitrum-nova-mainnet" | "canto-mainnet" | "bittorrent-mainnet" | "bittorrent-testnet" | "flarenetworks-flare-mainnet" | "flarenetworks-flare-testnet" | "flarenetworks-canary-mainnet" | "flarenetworks-canary-testnet" | "kcc-mainnet" | "kcc-testnet" | "polygon-zkevm-testnet" | "linea-testnet" | "base-testnet" | "mantle-testnet" | "scroll-alpha-testnet" | "oasys-mainnet" | "oasys-testnet" | "findora-mainnet" | "findora-forge-testnet" | "sx-mainnet", contractAddress: string, startingBlock?: number, endingBlock?: string): Promise<Response<LogEventsByAddressResponse>>;
|
|
146
|
+
/**
|
|
147
|
+
*
|
|
148
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
149
|
+
* @param {string} topicHash - The endpoint will return event logs that contain this topic hash.
|
|
150
|
+
* @param {number} startingBlock - The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
151
|
+
* @param {string} endingBlock - The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
152
|
+
* @param {string} secondaryTopics - Additional topic hash(es) to filter on - padded & unpadded address fields are supported.
|
|
153
|
+
*
|
|
154
|
+
*/
|
|
155
|
+
getLogEventsByTopicHash(chainName: "btc-mainnet" | "eth-mainnet" | "matic-mainnet" | "bsc-mainnet" | "avalanche-mainnet" | "fantom-mainnet" | "moonbeam-mainnet" | "moonbeam-moonriver" | "rsk-mainnet" | "arbitrum-mainnet" | "palm-mainnet" | "klaytn-mainnet" | "heco-mainnet" | "nervos-godwoken-mainnet" | "axie-mainnet" | "evmos-mainnet" | "astar-mainnet" | "iotex-mainnet" | "harmony-mainnet" | "cronos-mainnet" | "aurora-mainnet" | "emerald-paratime-mainnet" | "boba-mainnet" | "eth-goerli" | "matic-mumbai" | "avalanche-testnet" | "bsc-testnet" | "moonbeam-moonbase-alpha" | "rsk-testnet" | "arbitrum-goerli" | "fantom-testnet" | "palm-testnet" | "heco-testnet" | "nervos-godwoken-testnet" | "evmos-testnet" | "astar-shiden" | "iotex-testnet" | "harmony-testnet" | "aurora-testnet" | "scroll-l2-testnet" | "scroll-l1-testnet" | "covalent-internal-network-v1" | "defi-kingdoms-mainnet" | "swimmer-mainnet" | "boba-avalanche-mainnet" | "boba-bobabeam-mainnet" | "boba-bnb-mainnet" | "boba-rinkeby-testnet" | "boba-bobabase-testnet" | "boba-bnb-testnet" | "boba-avalanche-testnet" | "klaytn-testnet" | "gather-mainnet" | "gather-testnet" | "optimism-mainnet" | "skale-calypso" | "skale-mainnet" | "skale-razor" | "avalanche-dexalot-mainnet" | "skale-omnus" | "avalanche-dexalot-testnet" | "astar-shibuya" | "cronos-testnet" | "defi-kingdoms-testnet" | "metis-mainnet" | "metis-testnet" | "milkomeda-a1-mainnet" | "milkomeda-a1-devnet" | "milkomeda-c1-mainnet" | "milkomeda-c1-devnet" | "swimmer-testnet" | "solana-mainnet" | "skale-europa" | "meter-mainnet" | "meter-testnet" | "skale-exorde" | "boba-goerli" | "neon-testnet" | "skale-staging-uum" | "skale-staging-lcc" | "arbitrum-nova-mainnet" | "canto-mainnet" | "bittorrent-mainnet" | "bittorrent-testnet" | "flarenetworks-flare-mainnet" | "flarenetworks-flare-testnet" | "flarenetworks-canary-mainnet" | "flarenetworks-canary-testnet" | "kcc-mainnet" | "kcc-testnet" | "polygon-zkevm-testnet" | "linea-testnet" | "base-testnet" | "mantle-testnet" | "scroll-alpha-testnet" | "oasys-mainnet" | "oasys-testnet" | "findora-mainnet" | "findora-forge-testnet" | "sx-mainnet", topicHash: string, startingBlock?: number, endingBlock?: string, secondaryTopics?: string): Promise<Response<LogEventsByTopicHashResponse>>;
|
|
156
|
+
/**
|
|
157
|
+
*
|
|
158
|
+
|
|
159
|
+
*
|
|
160
|
+
*/
|
|
161
|
+
getAllChains(): Promise<Response<AllChainsResponse>>;
|
|
162
|
+
/**
|
|
163
|
+
*
|
|
164
|
+
|
|
165
|
+
*
|
|
166
|
+
*/
|
|
167
|
+
getAllChainStatus(): Promise<Response<AllChainsStatusResponse>>;
|
|
168
|
+
/**
|
|
169
|
+
*
|
|
170
|
+
* @param {string} address - The requested address.
|
|
171
|
+
*
|
|
172
|
+
*/
|
|
173
|
+
getAddressActivity(address: string): Promise<Response<AllChainsResponse>>;
|
|
174
|
+
}
|
|
175
|
+
export {};
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.BaseService = void 0;
|
|
13
|
+
const baseDelayMs = 1000; // Base delay in milliseconds
|
|
14
|
+
class BaseService {
|
|
15
|
+
constructor(apiKey) {
|
|
16
|
+
this.apiKey = apiKey;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
21
|
+
* @param {string} blockHeight - The block height or `latest` for the latest block available.
|
|
22
|
+
*
|
|
23
|
+
*/
|
|
24
|
+
getBlock(chainName, blockHeight) {
|
|
25
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
let retryCount = 0;
|
|
27
|
+
let success = false;
|
|
28
|
+
while (!success) {
|
|
29
|
+
try {
|
|
30
|
+
const urlParams = new URLSearchParams();
|
|
31
|
+
const response = yield fetch(`https://api.covalenthq.com/v1/${chainName}/block_v2/${blockHeight}/?${urlParams}`, {
|
|
32
|
+
headers: {
|
|
33
|
+
"Authorization": `Bearer ${this.apiKey}`
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
const data = yield response.json();
|
|
37
|
+
if (data.error && data.error_code === 429) {
|
|
38
|
+
retryCount++;
|
|
39
|
+
const delayMs = Math.pow(2, retryCount) * baseDelayMs; // Exponential delay calculation
|
|
40
|
+
yield new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
success = true;
|
|
44
|
+
return data;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
success = true;
|
|
49
|
+
return error.message;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
*
|
|
56
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
57
|
+
* @param {string} startDate - The start date in YYYY-MM-DD format.
|
|
58
|
+
* @param {string} endDate - The end date in YYYY-MM-DD format.
|
|
59
|
+
*
|
|
60
|
+
*/
|
|
61
|
+
getBlockHeights(chainName, startDate, endDate) {
|
|
62
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
let retryCount = 0;
|
|
64
|
+
let success = false;
|
|
65
|
+
while (!success) {
|
|
66
|
+
try {
|
|
67
|
+
const urlParams = new URLSearchParams();
|
|
68
|
+
const response = yield fetch(`https://api.covalenthq.com/v1/${chainName}/block_v2/${startDate}/${endDate}/?${urlParams}`, {
|
|
69
|
+
headers: {
|
|
70
|
+
"Authorization": `Bearer ${this.apiKey}`
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
const data = yield response.json();
|
|
74
|
+
if (data.error && data.error_code === 429) {
|
|
75
|
+
retryCount++;
|
|
76
|
+
const delayMs = Math.pow(2, retryCount) * baseDelayMs; // Exponential delay calculation
|
|
77
|
+
yield new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
success = true;
|
|
81
|
+
return data;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
success = true;
|
|
86
|
+
return error.message;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
*
|
|
93
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
94
|
+
* @param {string} contractAddress - The endpoint will return event logs emitted from this contract address. Passing in an `ENS`, `RNS`, or an `Unstoppable Domain` resolves automatically.
|
|
95
|
+
* @param {number} startingBlock - The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
96
|
+
* @param {string} endingBlock - The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
97
|
+
*
|
|
98
|
+
*/
|
|
99
|
+
getLogEventsByAddress(chainName, contractAddress, startingBlock, endingBlock) {
|
|
100
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
101
|
+
let retryCount = 0;
|
|
102
|
+
let success = false;
|
|
103
|
+
while (!success) {
|
|
104
|
+
try {
|
|
105
|
+
const urlParams = new URLSearchParams();
|
|
106
|
+
if (startingBlock !== undefined) {
|
|
107
|
+
urlParams.append("starting-block", startingBlock.toString());
|
|
108
|
+
}
|
|
109
|
+
if (endingBlock !== undefined) {
|
|
110
|
+
urlParams.append("ending-block", endingBlock.toString());
|
|
111
|
+
}
|
|
112
|
+
const response = yield fetch(`https://api.covalenthq.com/v1/${chainName}/events/address/${contractAddress}/?${urlParams}`, {
|
|
113
|
+
headers: {
|
|
114
|
+
"Authorization": `Bearer ${this.apiKey}`
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
const data = yield response.json();
|
|
118
|
+
if (data.error && data.error_code === 429) {
|
|
119
|
+
retryCount++;
|
|
120
|
+
const delayMs = Math.pow(2, retryCount) * baseDelayMs; // Exponential delay calculation
|
|
121
|
+
yield new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
success = true;
|
|
125
|
+
return data;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
catch (error) {
|
|
129
|
+
success = true;
|
|
130
|
+
return error.message;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
*
|
|
137
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
138
|
+
* @param {string} topicHash - The endpoint will return event logs that contain this topic hash.
|
|
139
|
+
* @param {number} startingBlock - The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
140
|
+
* @param {string} endingBlock - The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
141
|
+
* @param {string} secondaryTopics - Additional topic hash(es) to filter on - padded & unpadded address fields are supported.
|
|
142
|
+
*
|
|
143
|
+
*/
|
|
144
|
+
getLogEventsByTopicHash(chainName, topicHash, startingBlock, endingBlock, secondaryTopics) {
|
|
145
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
146
|
+
let retryCount = 0;
|
|
147
|
+
let success = false;
|
|
148
|
+
while (!success) {
|
|
149
|
+
try {
|
|
150
|
+
const urlParams = new URLSearchParams();
|
|
151
|
+
if (startingBlock !== undefined) {
|
|
152
|
+
urlParams.append("starting-block", startingBlock.toString());
|
|
153
|
+
}
|
|
154
|
+
if (endingBlock !== undefined) {
|
|
155
|
+
urlParams.append("ending-block", endingBlock.toString());
|
|
156
|
+
}
|
|
157
|
+
if (secondaryTopics !== undefined) {
|
|
158
|
+
urlParams.append("secondary-topics", secondaryTopics.toString());
|
|
159
|
+
}
|
|
160
|
+
const response = yield fetch(`https://api.covalenthq.com/v1/${chainName}/events/topics/${topicHash}/?${urlParams}`, {
|
|
161
|
+
headers: {
|
|
162
|
+
"Authorization": `Bearer ${this.apiKey}`
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
const data = yield response.json();
|
|
166
|
+
if (data.error && data.error_code === 429) {
|
|
167
|
+
retryCount++;
|
|
168
|
+
const delayMs = Math.pow(2, retryCount) * baseDelayMs; // Exponential delay calculation
|
|
169
|
+
yield new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
success = true;
|
|
173
|
+
return data;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
success = true;
|
|
178
|
+
return error.message;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
*
|
|
185
|
+
|
|
186
|
+
*
|
|
187
|
+
*/
|
|
188
|
+
getAllChains() {
|
|
189
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
190
|
+
let retryCount = 0;
|
|
191
|
+
let success = false;
|
|
192
|
+
while (!success) {
|
|
193
|
+
try {
|
|
194
|
+
const urlParams = new URLSearchParams();
|
|
195
|
+
const response = yield fetch(`https://api.covalenthq.com/v1/chains/?${urlParams}`, {
|
|
196
|
+
headers: {
|
|
197
|
+
"Authorization": `Bearer ${this.apiKey}`
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
const data = yield response.json();
|
|
201
|
+
if (data.error && data.error_code === 429) {
|
|
202
|
+
retryCount++;
|
|
203
|
+
const delayMs = Math.pow(2, retryCount) * baseDelayMs; // Exponential delay calculation
|
|
204
|
+
yield new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
207
|
+
success = true;
|
|
208
|
+
return data;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
catch (error) {
|
|
212
|
+
success = true;
|
|
213
|
+
return error.message;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
*
|
|
220
|
+
|
|
221
|
+
*
|
|
222
|
+
*/
|
|
223
|
+
getAllChainStatus() {
|
|
224
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
225
|
+
let retryCount = 0;
|
|
226
|
+
let success = false;
|
|
227
|
+
while (!success) {
|
|
228
|
+
try {
|
|
229
|
+
const urlParams = new URLSearchParams();
|
|
230
|
+
const response = yield fetch(`https://api.covalenthq.com/v1/chains/status/?${urlParams}`, {
|
|
231
|
+
headers: {
|
|
232
|
+
"Authorization": `Bearer ${this.apiKey}`
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
const data = yield response.json();
|
|
236
|
+
if (data.error && data.error_code === 429) {
|
|
237
|
+
retryCount++;
|
|
238
|
+
const delayMs = Math.pow(2, retryCount) * baseDelayMs; // Exponential delay calculation
|
|
239
|
+
yield new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
240
|
+
}
|
|
241
|
+
else {
|
|
242
|
+
success = true;
|
|
243
|
+
return data;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
catch (error) {
|
|
247
|
+
success = true;
|
|
248
|
+
return error.message;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
*
|
|
255
|
+
* @param {string} address - The requested address.
|
|
256
|
+
*
|
|
257
|
+
*/
|
|
258
|
+
getAddressActivity(address) {
|
|
259
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
260
|
+
let retryCount = 0;
|
|
261
|
+
let success = false;
|
|
262
|
+
while (!success) {
|
|
263
|
+
try {
|
|
264
|
+
const urlParams = new URLSearchParams();
|
|
265
|
+
const response = yield fetch(`https://api.covalenthq.com/v1/activity/${address}/?${urlParams}`, {
|
|
266
|
+
headers: {
|
|
267
|
+
"Authorization": `Bearer ${this.apiKey}`
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
const data = yield response.json();
|
|
271
|
+
if (data.error && data.error_code === 429) {
|
|
272
|
+
retryCount++;
|
|
273
|
+
const delayMs = Math.pow(2, retryCount) * baseDelayMs; // Exponential delay calculation
|
|
274
|
+
yield new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
275
|
+
}
|
|
276
|
+
else {
|
|
277
|
+
success = true;
|
|
278
|
+
return data;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
catch (error) {
|
|
282
|
+
success = true;
|
|
283
|
+
return error.message;
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
exports.BaseService = BaseService;
|
|
290
|
+
//# sourceMappingURL=BaseService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseService.js","sourceRoot":"","sources":["../src/services/BaseService.ts"],"names":[],"mappings":"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"}
|
package/dist/Client.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { NameResolverService } from "./NameResolverService";
|
|
2
|
+
import { ApprovalService } from "./ApprovalService";
|
|
3
|
+
import { BalancesService } from "./BalancesService";
|
|
4
|
+
import { BaseService } from "./BaseService";
|
|
5
|
+
import { LogEventService } from "./LogEventService";
|
|
6
|
+
import { NftService } from "./NftService";
|
|
7
|
+
import { PricingService } from "./PricingService";
|
|
8
|
+
import { TransactionsService } from "./TransactionsService";
|
|
9
|
+
import { XykService } from "./XykService";
|
|
10
|
+
/**
|
|
11
|
+
* Client Class
|
|
12
|
+
*/
|
|
13
|
+
export declare class Client {
|
|
14
|
+
NameResolverService: NameResolverService;
|
|
15
|
+
ApprovalService: ApprovalService;
|
|
16
|
+
BalancesService: BalancesService;
|
|
17
|
+
BaseService: BaseService;
|
|
18
|
+
LogEventService: LogEventService;
|
|
19
|
+
NftService: NftService;
|
|
20
|
+
PricingService: PricingService;
|
|
21
|
+
TransactionsService: TransactionsService;
|
|
22
|
+
XykService: XykService;
|
|
23
|
+
constructor(apiKey: string);
|
|
24
|
+
}
|
package/dist/Client.js
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Client = void 0;
|
|
4
|
+
const NameResolverService_1 = require("./NameResolverService");
|
|
5
|
+
const ApprovalService_1 = require("./ApprovalService");
|
|
6
|
+
const BalancesService_1 = require("./BalancesService");
|
|
7
|
+
const BaseService_1 = require("./BaseService");
|
|
8
|
+
const LogEventService_1 = require("./LogEventService");
|
|
9
|
+
const NftService_1 = require("./NftService");
|
|
10
|
+
const PricingService_1 = require("./PricingService");
|
|
11
|
+
const TransactionsService_1 = require("./TransactionsService");
|
|
12
|
+
const XykService_1 = require("./XykService");
|
|
13
|
+
/**
|
|
14
|
+
* Client Class
|
|
15
|
+
*/
|
|
16
|
+
class Client {
|
|
17
|
+
constructor(apiKey) {
|
|
18
|
+
this.NameResolverService = new NameResolverService_1.NameResolverService(apiKey);
|
|
19
|
+
this.ApprovalService = new ApprovalService_1.ApprovalService(apiKey);
|
|
20
|
+
this.BalancesService = new BalancesService_1.BalancesService(apiKey);
|
|
21
|
+
this.BaseService = new BaseService_1.BaseService(apiKey);
|
|
22
|
+
this.LogEventService = new LogEventService_1.LogEventService(apiKey);
|
|
23
|
+
this.NftService = new NftService_1.NftService(apiKey);
|
|
24
|
+
this.PricingService = new PricingService_1.PricingService(apiKey);
|
|
25
|
+
this.TransactionsService = new TransactionsService_1.TransactionsService(apiKey);
|
|
26
|
+
this.XykService = new XykService_1.XykService(apiKey);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.Client = Client;
|
|
30
|
+
//# sourceMappingURL=Client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Client.js","sourceRoot":"","sources":["../src/services/Client.ts"],"names":[],"mappings":";;;AAAA,+DAA4D;AAC5D,uDAAoD;AACpD,uDAAoD;AACpD,+CAA4C;AAC5C,uDAAoD;AACpD,6CAA0C;AAC1C,qDAAkD;AAClD,+DAA4D;AAC5D,6CAA0C;AAC1C;;GAEG;AACH,MAAa,MAAM;IAoBf,YAAY,MAAc;QAEtB,IAAI,CAAC,mBAAmB,GAAG,IAAI,yCAAmB,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,eAAe,GAAG,IAAI,iCAAe,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,eAAe,GAAG,IAAI,iCAAe,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,eAAe,GAAG,IAAI,iCAAe,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAU,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,GAAG,IAAI,+BAAc,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,mBAAmB,GAAG,IAAI,yCAAmB,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAU,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;CAEJ;AAjCD,wBAiCC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
interface GetLogsResponse {
|
|
2
|
+
updated_at: string;
|
|
3
|
+
chain_id: number;
|
|
4
|
+
chain_name: string;
|
|
5
|
+
items: GetLogsEvent[];
|
|
6
|
+
}
|
|
7
|
+
interface GetLogsEvent {
|
|
8
|
+
block_signed_at: string;
|
|
9
|
+
block_height: number;
|
|
10
|
+
block_hash: string;
|
|
11
|
+
tx_offset: number;
|
|
12
|
+
log_offset: number;
|
|
13
|
+
tx_hash: string;
|
|
14
|
+
raw_log_topics: string;
|
|
15
|
+
sender_contract_decimals: number;
|
|
16
|
+
sender_name: string;
|
|
17
|
+
sender_contract_ticker_symbol: string;
|
|
18
|
+
sender_address: string;
|
|
19
|
+
sender_address_label: string;
|
|
20
|
+
sender_logo_url: string;
|
|
21
|
+
raw_log_data: string;
|
|
22
|
+
decoded: DecodedItem[];
|
|
23
|
+
}
|
|
24
|
+
interface DecodedItem {
|
|
25
|
+
name: string;
|
|
26
|
+
signature: string;
|
|
27
|
+
params: Param[];
|
|
28
|
+
}
|
|
29
|
+
interface Param {
|
|
30
|
+
name: string;
|
|
31
|
+
type: string;
|
|
32
|
+
indexed: boolean;
|
|
33
|
+
decoded: boolean;
|
|
34
|
+
value: string;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Get Logs API
|
|
38
|
+
*
|
|
39
|
+
*/
|
|
40
|
+
export interface Response<T> {
|
|
41
|
+
data: T;
|
|
42
|
+
error: boolean;
|
|
43
|
+
error_code: number;
|
|
44
|
+
error_message: string;
|
|
45
|
+
}
|
|
46
|
+
export declare class LogEventService {
|
|
47
|
+
private apiKey;
|
|
48
|
+
constructor(apiKey: string);
|
|
49
|
+
/**
|
|
50
|
+
*
|
|
51
|
+
* @param {string} chainName - The chain name eg: `eth-mainnet`.
|
|
52
|
+
* @param {number} startingBlock - The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
53
|
+
* @param {string} endingBlock - The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.
|
|
54
|
+
* @param {string} address - The address of the log events sender contract.
|
|
55
|
+
* @param {string} topics - The topic hash(es) to retrieve logs with.
|
|
56
|
+
* @param {string} blockHash - The block hash to retrieve logs for.
|
|
57
|
+
* @param {boolean} skipDecode - Omit decoded log events.
|
|
58
|
+
*
|
|
59
|
+
*/
|
|
60
|
+
getLogs(chainName: "btc-mainnet" | "eth-mainnet" | "matic-mainnet" | "bsc-mainnet" | "avalanche-mainnet" | "fantom-mainnet" | "moonbeam-mainnet" | "moonbeam-moonriver" | "rsk-mainnet" | "arbitrum-mainnet" | "palm-mainnet" | "klaytn-mainnet" | "heco-mainnet" | "nervos-godwoken-mainnet" | "axie-mainnet" | "evmos-mainnet" | "astar-mainnet" | "iotex-mainnet" | "harmony-mainnet" | "cronos-mainnet" | "aurora-mainnet" | "emerald-paratime-mainnet" | "boba-mainnet" | "eth-goerli" | "matic-mumbai" | "avalanche-testnet" | "bsc-testnet" | "moonbeam-moonbase-alpha" | "rsk-testnet" | "arbitrum-goerli" | "fantom-testnet" | "palm-testnet" | "heco-testnet" | "nervos-godwoken-testnet" | "evmos-testnet" | "astar-shiden" | "iotex-testnet" | "harmony-testnet" | "aurora-testnet" | "scroll-l2-testnet" | "scroll-l1-testnet" | "covalent-internal-network-v1" | "defi-kingdoms-mainnet" | "swimmer-mainnet" | "boba-avalanche-mainnet" | "boba-bobabeam-mainnet" | "boba-bnb-mainnet" | "boba-rinkeby-testnet" | "boba-bobabase-testnet" | "boba-bnb-testnet" | "boba-avalanche-testnet" | "klaytn-testnet" | "gather-mainnet" | "gather-testnet" | "optimism-mainnet" | "skale-calypso" | "skale-mainnet" | "skale-razor" | "avalanche-dexalot-mainnet" | "skale-omnus" | "avalanche-dexalot-testnet" | "astar-shibuya" | "cronos-testnet" | "defi-kingdoms-testnet" | "metis-mainnet" | "metis-testnet" | "milkomeda-a1-mainnet" | "milkomeda-a1-devnet" | "milkomeda-c1-mainnet" | "milkomeda-c1-devnet" | "swimmer-testnet" | "solana-mainnet" | "skale-europa" | "meter-mainnet" | "meter-testnet" | "skale-exorde" | "boba-goerli" | "neon-testnet" | "skale-staging-uum" | "skale-staging-lcc" | "arbitrum-nova-mainnet" | "canto-mainnet" | "bittorrent-mainnet" | "bittorrent-testnet" | "flarenetworks-flare-mainnet" | "flarenetworks-flare-testnet" | "flarenetworks-canary-mainnet" | "flarenetworks-canary-testnet" | "kcc-mainnet" | "kcc-testnet" | "polygon-zkevm-testnet" | "linea-testnet" | "base-testnet" | "mantle-testnet" | "scroll-alpha-testnet" | "oasys-mainnet" | "oasys-testnet" | "findora-mainnet" | "findora-forge-testnet" | "sx-mainnet", startingBlock?: number, endingBlock?: string, address?: string, topics?: string, blockHash?: string, skipDecode?: boolean): Promise<Response<GetLogsResponse>>;
|
|
61
|
+
}
|
|
62
|
+
export {};
|