@ercworldio/blockchain-shared 1.0.3-dev.0-PROJ-1281.3 → 1.0.3-dev.0-PROJ-1281.4
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../src/chains/Provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Provider.d.ts","sourceRoot":"","sources":["../../src/chains/Provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGvD,oBAAY,OAAO;IACf,IAAI,IAAI;IACR,GAAG,IAAI;CACV;AAED,oBAAY,eAAe;IACvB,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,OAAO,YAAY;CACtB;AAmBD,cAAM,QAAS,SAAQ,UAAU;IAE7B,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,6BAA6B,CAAsB;IAC3D,OAAO,CAAC,wBAAwB,CAAS;gBAC7B,MAAM,EAAE,OAAO;IAqB3B,eAAe,GAAI,UAAU,OAAO,YAoBnC;IAED,mBAAmB,GAAI,UAAU,OAAO,EAAE,cAAc,aAAa,EAAE,SAAS,OAAO,EAAE,eAAc,eAAsC;;MA8B5I;IAED;;;;;;;;;OASG;IACH,WAAW,GAAI,SAAS,MAAM,EAAE,SAAS,OAAO,EAAE,eAAc,eAAsC;;;;;;MAcrG;CAGJ;AAGD,eAAe,QAAQ,CAAC"}
|
package/build/chains/Provider.js
CHANGED
|
@@ -7,6 +7,7 @@ exports.RpcProviderType = exports.RpcType = void 0;
|
|
|
7
7
|
const ethers_1 = require("ethers");
|
|
8
8
|
const ChainManager_1 = __importDefault(require("../services/ChainManager"));
|
|
9
9
|
const errors_1 = __importDefault(require("../errors/errors"));
|
|
10
|
+
const alchemy_1 = require("../services/utils/alchemy");
|
|
10
11
|
var RpcType;
|
|
11
12
|
(function (RpcType) {
|
|
12
13
|
RpcType[RpcType["HTTP"] = 0] = "HTTP";
|
|
@@ -16,6 +17,7 @@ var RpcProviderType;
|
|
|
16
17
|
(function (RpcProviderType) {
|
|
17
18
|
RpcProviderType["ANKR"] = "ankr";
|
|
18
19
|
RpcProviderType["QUICKNODE"] = "quicknode";
|
|
20
|
+
RpcProviderType["ALCHEMY"] = "alchemy";
|
|
19
21
|
})(RpcProviderType || (exports.RpcProviderType = RpcProviderType = {}));
|
|
20
22
|
const avax_c_chain_rpc_path = '/ext/bc/C/rpc/';
|
|
21
23
|
const quicknodeChainIdToName = {
|
|
@@ -62,6 +64,13 @@ class Provider extends errors_1.default {
|
|
|
62
64
|
};
|
|
63
65
|
this.getRpcUrlComponents = (chain_id, chain_config, rpcType, providerType = RpcProviderType.ANKR) => {
|
|
64
66
|
switch (providerType) {
|
|
67
|
+
case RpcProviderType.ALCHEMY:
|
|
68
|
+
if (rpcType === RpcType.WSS)
|
|
69
|
+
throw new Error(`Alchemy Endpoints does not support WSS`);
|
|
70
|
+
if (!this.config.config.alchemyApiKey)
|
|
71
|
+
throw new Error(this.RequireParameter("secret: alchemyApiKey"));
|
|
72
|
+
const alchemy_network_name = (0, alchemy_1.get_alchemy_chain_name)(chain_id);
|
|
73
|
+
return { url: `https://${alchemy_network_name}.g.alchemy.com/${this.config.config.alchemyApiKey}` };
|
|
65
74
|
case RpcProviderType.ANKR:
|
|
66
75
|
if (!this.config.config.ankrApiKey)
|
|
67
76
|
throw new Error(this.RequireParameter("secret: ankrApiKey"));
|
package/build/utils/solana.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { BlockchainType } from "../interfaces";
|
|
|
5
5
|
import { IConfig } from "../interfaces/config";
|
|
6
6
|
import { IDatabasePool } from "../interfaces/database";
|
|
7
7
|
import { SweepJob } from "../entities/SweepJob";
|
|
8
|
+
import { RpcProviderType } from "../chains/Provider";
|
|
8
9
|
export declare const min_solana_funding_lamports: number;
|
|
9
10
|
export interface SweepSolanaResult {
|
|
10
11
|
status: boolean;
|
|
@@ -72,8 +73,35 @@ export declare const handle_transfer_batch: (payloads: SolanaTransactionRequest[
|
|
|
72
73
|
}>;
|
|
73
74
|
export declare const find_transfer_instruction: (tx: SolanaTransactionLog, receiver?: string) => TransferInstructionRecord;
|
|
74
75
|
export declare const find_transfer_instruction_depr: (tx: SolanaTransactionLog) => TransferInstructionRecord;
|
|
76
|
+
/**
|
|
77
|
+
* Return an ankr-based solana connection
|
|
78
|
+
* @param chainId
|
|
79
|
+
* @param config
|
|
80
|
+
* @returns
|
|
81
|
+
*/
|
|
75
82
|
export declare const getSolanaConnection: (chainId: string, config: IConfig) => web3.Connection;
|
|
76
|
-
|
|
83
|
+
/**
|
|
84
|
+
* Return a Solana connection based on the provided rpc provider type.
|
|
85
|
+
* Default to use Quicknode provider
|
|
86
|
+
* @param chainId
|
|
87
|
+
* @param config
|
|
88
|
+
* @param rpcProvider
|
|
89
|
+
* @returns
|
|
90
|
+
*/
|
|
91
|
+
export declare const getSolanaArchivalConnection: (chainId: string, config: IConfig, rpcProvider?: RpcProviderType) => web3.Connection;
|
|
92
|
+
/**
|
|
93
|
+
* Returns the respective RPC url for a given rpc provider type and chain id
|
|
94
|
+
* @param chainId
|
|
95
|
+
* @param config
|
|
96
|
+
* @param rpcProvider
|
|
97
|
+
* @returns
|
|
98
|
+
*/
|
|
99
|
+
export declare const getRpcUrl: (chainId: string, config: IConfig, rpcProvider: RpcProviderType) => string;
|
|
100
|
+
/**
|
|
101
|
+
* Returns a public solana RPC url
|
|
102
|
+
* @param chainId
|
|
103
|
+
* @returns
|
|
104
|
+
*/
|
|
77
105
|
export declare const getSolanaConnectionPublic: (chainId: string) => web3.Connection;
|
|
78
106
|
export declare const get_token_account_info: (chainId: string, mint_address: string, owner_address: string, config: IConfig) => Promise<{
|
|
79
107
|
sol_balance_lamports: number | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solana.d.ts","sourceRoot":"","sources":["../../src/utils/solana.ts"],"names":[],"mappings":"AAEA,OAAO,EAAa,OAAO,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,IAAI,EAAE,EAA6B,OAAO,EAAuC,SAAS,EAAgE,MAAM,iBAAiB,CAAA;AAGxL,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAGnF,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"solana.d.ts","sourceRoot":"","sources":["../../src/utils/solana.ts"],"names":[],"mappings":"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"}
|
package/build/utils/solana.js
CHANGED
|
@@ -45,7 +45,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
45
45
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
46
46
|
};
|
|
47
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
-
exports.check_approve_delegate = exports.handle_create_versioned_transaction_spl = exports.estimate_withdraw_gas_cost = exports.create_versioned_transaction_solana = exports.get_token_account_info = exports.getSolanaConnectionPublic = exports.getSolanaArchivalConnection = exports.getSolanaConnection = exports.find_transfer_instruction_depr = exports.find_transfer_instruction = exports.handle_transfer_batch = exports.handle_sweep = exports.SplTransferCheckedLayout = exports.SolTransferInstructionLayout = exports.usdc_program_address = exports.solana_program_address = exports.min_solana_funding_lamports = void 0;
|
|
48
|
+
exports.check_approve_delegate = exports.handle_create_versioned_transaction_spl = exports.estimate_withdraw_gas_cost = exports.create_versioned_transaction_solana = exports.get_token_account_info = exports.getSolanaConnectionPublic = exports.getRpcUrl = exports.getSolanaArchivalConnection = exports.getSolanaConnection = exports.find_transfer_instruction_depr = exports.find_transfer_instruction = exports.handle_transfer_batch = exports.handle_sweep = exports.SplTransferCheckedLayout = exports.SolTransferInstructionLayout = exports.usdc_program_address = exports.solana_program_address = exports.min_solana_funding_lamports = void 0;
|
|
49
49
|
const buffer_layout_utils_1 = require("@solana/buffer-layout-utils");
|
|
50
50
|
const buffer_layout_1 = require("@solana/buffer-layout");
|
|
51
51
|
const web3_js_1 = __importStar(require("@solana/web3.js"));
|
|
@@ -56,6 +56,8 @@ const WalletManager_1 = __importDefault(require("../services/WalletManager"));
|
|
|
56
56
|
const Wallets_1 = require("./Wallets");
|
|
57
57
|
const WithdrawalManager_1 = __importDefault(require("../services/WithdrawalManager"));
|
|
58
58
|
const constants_1 = require("../constants");
|
|
59
|
+
const Provider_1 = require("../chains/Provider");
|
|
60
|
+
const alchemy_1 = require("../services/utils/alchemy");
|
|
59
61
|
exports.min_solana_funding_lamports = 0.001 * web3_js_1.LAMPORTS_PER_SOL;
|
|
60
62
|
exports.solana_program_address = "11111111111111111111111111111111";
|
|
61
63
|
exports.usdc_program_address = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
|
|
@@ -216,28 +218,72 @@ const find_transfer_instruction_depr = (tx) => {
|
|
|
216
218
|
return { instruction: target_instruction, is_native: tx.transaction[0].message[0].account_keys[parseInt(program_index)] === exports.solana_program_address };
|
|
217
219
|
};
|
|
218
220
|
exports.find_transfer_instruction_depr = find_transfer_instruction_depr;
|
|
221
|
+
/**
|
|
222
|
+
* Return an ankr-based solana connection
|
|
223
|
+
* @param chainId
|
|
224
|
+
* @param config
|
|
225
|
+
* @returns
|
|
226
|
+
*/
|
|
219
227
|
const getSolanaConnection = (chainId, config) => {
|
|
220
228
|
const network = ChainManager_1.default.getInstance(config).getChainConfigForChainIdSync(parseInt(chainId));
|
|
221
229
|
if (!network)
|
|
222
230
|
throw new Error(`Network config not set for ${chainId}`);
|
|
223
231
|
const url = `${network.rpcBaseUrl}/${config.config.ankrApiKey}`;
|
|
224
|
-
// const url = `${config.config.quicknodeEndpointBaseUrl.replace('*', config.config.qnEndpointSolanaNetwork)}/${config.config.quicknodeEndpointApikey}`
|
|
225
232
|
return new web3_js_1.Connection(url, 'confirmed');
|
|
226
233
|
};
|
|
227
234
|
exports.getSolanaConnection = getSolanaConnection;
|
|
228
|
-
|
|
235
|
+
/**
|
|
236
|
+
* Return a Solana connection based on the provided rpc provider type.
|
|
237
|
+
* Default to use Quicknode provider
|
|
238
|
+
* @param chainId
|
|
239
|
+
* @param config
|
|
240
|
+
* @param rpcProvider
|
|
241
|
+
* @returns
|
|
242
|
+
*/
|
|
243
|
+
const getSolanaArchivalConnection = (chainId, config, rpcProvider = Provider_1.RpcProviderType.QUICKNODE) => {
|
|
244
|
+
const url = (0, exports.getRpcUrl)(chainId, config, rpcProvider);
|
|
245
|
+
return new web3_js_1.Connection(url, 'confirmed');
|
|
246
|
+
};
|
|
247
|
+
exports.getSolanaArchivalConnection = getSolanaArchivalConnection;
|
|
248
|
+
/**
|
|
249
|
+
* Returns the respective RPC url for a given rpc provider type and chain id
|
|
250
|
+
* @param chainId
|
|
251
|
+
* @param config
|
|
252
|
+
* @param rpcProvider
|
|
253
|
+
* @returns
|
|
254
|
+
*/
|
|
255
|
+
const getRpcUrl = (chainId, config, rpcProvider) => {
|
|
229
256
|
const network = ChainManager_1.default.getInstance(config).getChainConfigForChainIdSync(parseInt(chainId));
|
|
230
257
|
if (!network)
|
|
231
258
|
throw new Error(`Network config not set for ${chainId}`);
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
259
|
+
switch (rpcProvider) {
|
|
260
|
+
case Provider_1.RpcProviderType.ALCHEMY:
|
|
261
|
+
const alchemy_network_name = (0, alchemy_1.get_alchemy_chain_name)(chainId);
|
|
262
|
+
if (!alchemy_network_name)
|
|
263
|
+
throw new Error(`Cannot find alchemy network name for chain id ${chainId}`);
|
|
264
|
+
return `https://${alchemy_network_name}.g.alchemy.com/v2/${config.config.alchemyApiKey}`;
|
|
265
|
+
case Provider_1.RpcProviderType.ANKR:
|
|
266
|
+
if (!config.config.ankrApiKey)
|
|
267
|
+
throw new Error(`ankrApiKey is required`);
|
|
268
|
+
if (!network.rpcBaseUrl)
|
|
269
|
+
throw new Error(`rpcBaseUrl is not set in network config`);
|
|
270
|
+
return `${network.rpcBaseUrl}/${config.config.ankrApiKey}`;
|
|
271
|
+
case Provider_1.RpcProviderType.QUICKNODE:
|
|
272
|
+
if (!config.config.quicknodeEndpointBaseUrl)
|
|
273
|
+
throw new Error(`quicknodeEndpointBaseUrl is required`);
|
|
274
|
+
if (!config.config.quicknodeEndpointApikey)
|
|
275
|
+
throw new Error(`quicknodeEndpointApikey is required`);
|
|
276
|
+
return `${config.config.quicknodeEndpointBaseUrl}/${config.config.quicknodeEndpointApikey}`;
|
|
277
|
+
default:
|
|
278
|
+
throw new Error(`Unsupported rpc provider type ${rpcProvider}`);
|
|
279
|
+
}
|
|
239
280
|
};
|
|
240
|
-
exports.
|
|
281
|
+
exports.getRpcUrl = getRpcUrl;
|
|
282
|
+
/**
|
|
283
|
+
* Returns a public solana RPC url
|
|
284
|
+
* @param chainId
|
|
285
|
+
* @returns
|
|
286
|
+
*/
|
|
241
287
|
const getSolanaConnectionPublic = (chainId) => {
|
|
242
288
|
const url = chainId === '101'
|
|
243
289
|
? (0, web3_js_1.clusterApiUrl)('mainnet-beta')
|
package/package.json
CHANGED