@xchainjs/xchain-avax 0.5.1 → 0.5.3
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/lib/ClientKeystore.d.ts +2 -2
- package/lib/ClientLedger.d.ts +3 -2
- package/lib/index.esm.js +16 -9
- package/lib/index.esm.js.map +1 -1
- package/lib/index.js +16 -9
- package/lib/index.js.map +1 -1
- package/package.json +12 -6
package/lib/ClientKeystore.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ClientKeystore as EVMClientKeystore } from '@xchainjs/xchain-evm';
|
|
1
|
+
import { ClientKeystore as EVMClientKeystore, EVMClientParams } from '@xchainjs/xchain-evm';
|
|
2
2
|
export declare class ClientKeystore extends EVMClientKeystore {
|
|
3
|
-
constructor(config?:
|
|
3
|
+
constructor(config?: Omit<EVMClientParams, 'signer'>);
|
|
4
4
|
}
|
package/lib/ClientLedger.d.ts
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Importing the `Client` class from the '@xchainjs/xchain-evm' module
|
|
4
4
|
* Importing the `defaultEthParams` constant from the './const' file
|
|
5
5
|
*/
|
|
6
|
+
import type Transport from '@ledgerhq/hw-transport';
|
|
6
7
|
import { ClientLedger as EVMClientLedger, EVMClientParams } from '@xchainjs/xchain-evm';
|
|
7
8
|
/**
|
|
8
9
|
* Class definition for the Avalanche EVM client.
|
|
@@ -14,7 +15,7 @@ export declare class ClientLedger extends EVMClientLedger {
|
|
|
14
15
|
* @param {Object} config - Configuration object for the client (optional).
|
|
15
16
|
* Defaults to `defaultEthParams` if not provided.
|
|
16
17
|
*/
|
|
17
|
-
constructor(config: EVMClientParams & {
|
|
18
|
-
transport:
|
|
18
|
+
constructor(config: Omit<EVMClientParams, 'signer' | 'phrase'> & {
|
|
19
|
+
transport: Transport;
|
|
19
20
|
});
|
|
20
21
|
}
|
package/lib/index.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ClientKeystore as ClientKeystore$1, ClientLedger as ClientLedger$1 } from '@xchainjs/xchain-evm';
|
|
2
1
|
import { Network, ExplorerProvider } from '@xchainjs/xchain-client';
|
|
2
|
+
import { ClientKeystore as ClientKeystore$1, KeystoreSigner, ClientLedger as ClientLedger$1, LedgerSigner } from '@xchainjs/xchain-evm';
|
|
3
3
|
import { EtherscanProvider, RoutescanProvider } from '@xchainjs/xchain-evm-providers';
|
|
4
4
|
import { ethers, BigNumber } from 'ethers';
|
|
5
5
|
|
|
@@ -96,15 +96,18 @@ const defaultAvaxParams = {
|
|
|
96
96
|
class ClientKeystore extends ClientKeystore$1 {
|
|
97
97
|
// Constructor function that takes an optional config parameter, defaulting to defaultAvaxParams
|
|
98
98
|
constructor(config = defaultAvaxParams) {
|
|
99
|
-
super(config)
|
|
99
|
+
super(Object.assign(Object.assign({}, config), { signer: config.phrase
|
|
100
|
+
? new KeystoreSigner({
|
|
101
|
+
phrase: config.phrase,
|
|
102
|
+
provider: config.providers[config.network || Network.Mainnet],
|
|
103
|
+
derivationPath: config.rootDerivationPaths
|
|
104
|
+
? config.rootDerivationPaths[config.network || Network.Mainnet]
|
|
105
|
+
: '',
|
|
106
|
+
})
|
|
107
|
+
: undefined }));
|
|
100
108
|
}
|
|
101
109
|
}
|
|
102
110
|
|
|
103
|
-
/**
|
|
104
|
-
* Import statements
|
|
105
|
-
* Importing the `Client` class from the '@xchainjs/xchain-evm' module
|
|
106
|
-
* Importing the `defaultEthParams` constant from the './const' file
|
|
107
|
-
*/
|
|
108
111
|
/**
|
|
109
112
|
* Class definition for the Avalanche EVM client.
|
|
110
113
|
* Extends the `XchainEvmClient` class.
|
|
@@ -115,9 +118,13 @@ class ClientLedger extends ClientLedger$1 {
|
|
|
115
118
|
* @param {Object} config - Configuration object for the client (optional).
|
|
116
119
|
* Defaults to `defaultEthParams` if not provided.
|
|
117
120
|
*/
|
|
118
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
119
121
|
constructor(config) {
|
|
120
|
-
|
|
122
|
+
// Call the constructor of the parent class with the provided config or the default parameters
|
|
123
|
+
super(Object.assign(Object.assign({}, config), { signer: new LedgerSigner({
|
|
124
|
+
transport: config.transport,
|
|
125
|
+
provider: config.providers[config.network || Network.Mainnet],
|
|
126
|
+
derivationPath: config.rootDerivationPaths ? config.rootDerivationPaths[config.network || Network.Mainnet] : '',
|
|
127
|
+
}) }));
|
|
121
128
|
}
|
|
122
129
|
}
|
|
123
130
|
|
package/lib/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../src/const.ts","../src/ClientKeystore.ts","../src/ClientLedger.ts","../src/index.ts"],"sourcesContent":["// Import necessary modules and classes from external packages and files\nimport { ExplorerProvider, Network } from '@xchainjs/xchain-client'\nimport { EVMClientParams } from '@xchainjs/xchain-evm'\nimport { EtherscanProvider, RoutescanProvider } from '@xchainjs/xchain-evm-providers'\nimport { Asset } from '@xchainjs/xchain-util'\nimport { BigNumber, ethers } from 'ethers'\n\n// Define constants related to Avalanche\nexport const AVAX_DECIMAL = 18\nexport const LOWER_FEE_BOUND = 2_000_000_000\nexport const UPPER_FEE_BOUND = 1_000_000_000_000\nexport const AVAX_GAS_ASSET_DECIMAL = 18\nexport const AVAXChain = 'AVAX' as const\nexport const AssetAVAX: Asset = { chain: AVAXChain, symbol: 'AVAX', ticker: 'AVAX', synth: false }\n\n// Define JSON-RPC providers for mainnet and testnet\nconst AVALANCHE_MAINNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://rpc.ankr.com/avalanche')\nconst AVALANCHE_TESTNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://rpc.ankr.com/avalanche_fuji')\n\n// Define ethers providers for different networks\nconst ethersJSProviders = {\n [Network.Mainnet]: AVALANCHE_MAINNET_ETHERS_PROVIDER,\n [Network.Testnet]: AVALANCHE_TESTNET_ETHERS_PROVIDER,\n [Network.Stagenet]: AVALANCHE_MAINNET_ETHERS_PROVIDER,\n}\n\n// Define online providers (Etherscan) for mainnet and testnet\nconst AVAX_ONLINE_PROVIDER_TESTNET = new EtherscanProvider(\n AVALANCHE_TESTNET_ETHERS_PROVIDER,\n 'https://api-testnet.snowtrace.io',\n process.env.SNOWTRACE_API_KEY || '',\n AVAXChain,\n AssetAVAX,\n 18,\n)\nconst AVAX_ONLINE_PROVIDER_MAINNET = new EtherscanProvider(\n AVALANCHE_MAINNET_ETHERS_PROVIDER,\n 'https://api.snowtrace.io',\n process.env.SNOWTRACE_API_KEY || '',\n AVAXChain,\n AssetAVAX,\n 18,\n)\n\n// Define providers for different networks\nconst avaxProviders = {\n [Network.Mainnet]: AVAX_ONLINE_PROVIDER_MAINNET,\n [Network.Testnet]: AVAX_ONLINE_PROVIDER_TESTNET,\n [Network.Stagenet]: AVAX_ONLINE_PROVIDER_MAINNET,\n}\n\n// Define Routescan providers for mainnet and testnet\nconst ROUTESCAN_PROVIDER_MAINNET = new RoutescanProvider(\n AVALANCHE_MAINNET_ETHERS_PROVIDER,\n 'https://api.routescan.io',\n 43114,\n AssetAVAX,\n AVAX_DECIMAL,\n)\n\nconst ROUTESCAN_PROVIDER_TESTNET = new RoutescanProvider(\n AVALANCHE_TESTNET_ETHERS_PROVIDER,\n 'https://api.routescan.io',\n 43113,\n AssetAVAX,\n AVAX_DECIMAL,\n true,\n)\n\n// Define Routescan providers for different networks\nconst routescanProviders = {\n [Network.Mainnet]: ROUTESCAN_PROVIDER_MAINNET,\n [Network.Testnet]: ROUTESCAN_PROVIDER_TESTNET,\n [Network.Stagenet]: ROUTESCAN_PROVIDER_MAINNET,\n}\n\n// Define explorer providers for mainnet and testnet\nconst AVAX_MAINNET_EXPLORER = new ExplorerProvider(\n 'https://snowtrace.dev/',\n 'https://snowtrace.dev/address/%%ADDRESS%%',\n 'https://snowtrace.dev/tx/%%TX_ID%%',\n)\nconst AVAX_TESTNET_EXPLORER = new ExplorerProvider(\n 'https://testnet.snowtrace.dev/',\n 'https://testnet.snowtrace.dev/address/%%ADDRESS%%',\n 'https://testnet.snowtrace.dev/tx/%%TX_ID%%',\n)\n\n// Define explorer providers for different networks\nconst avaxExplorerProviders = {\n [Network.Mainnet]: AVAX_MAINNET_EXPLORER,\n [Network.Testnet]: AVAX_TESTNET_EXPLORER,\n [Network.Stagenet]: AVAX_MAINNET_EXPLORER,\n}\n\n// Define root derivation paths for different networks\nconst ethRootDerivationPaths = {\n [Network.Mainnet]: `m/44'/60'/0'/0/`,\n [Network.Testnet]: `m/44'/60'/0'/0/`,\n [Network.Stagenet]: `m/44'/60'/0'/0/`,\n}\n\n// Define default parameters for the Avalanche client\nconst defaults = {\n [Network.Mainnet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n [Network.Testnet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n [Network.Stagenet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n}\n\n// Define the default parameters for the Avalanche client\nexport const defaultAvaxParams: EVMClientParams = {\n chain: AVAXChain,\n gasAsset: AssetAVAX,\n gasAssetDecimals: AVAX_GAS_ASSET_DECIMAL,\n defaults,\n providers: ethersJSProviders,\n explorerProviders: avaxExplorerProviders,\n dataProviders: [avaxProviders, routescanProviders],\n network: Network.Mainnet,\n feeBounds: {\n lower: LOWER_FEE_BOUND,\n upper: UPPER_FEE_BOUND,\n },\n rootDerivationPaths: ethRootDerivationPaths,\n}\n","// Import the Client class from '@xchainjs/xchain-evm' module\nimport { ClientKeystore as EVMClientKeystore } from '@xchainjs/xchain-evm'\n\n// Import defaultAvaxParams constant from './const' file\nimport { defaultAvaxParams } from './const'\n\n// Define and export the Client class as the default exportClientKeystore\nexport class ClientKeystore extends EVMClientKeystore {\n // Constructor function that takes an optional config parameter, defaulting to defaultAvaxParams\n constructor(config = defaultAvaxParams) {\n super(config)\n }\n}\n","/**\n * Import statements\n * Importing the `Client` class from the '@xchainjs/xchain-evm' module\n * Importing the `defaultEthParams` constant from the './const' file\n */\nimport { ClientLedger as EVMClientLedger, EVMClientParams } from '@xchainjs/xchain-evm'\n\n/**\n * Class definition for the Avalanche EVM client.\n * Extends the `XchainEvmClient` class.\n */\nexport class ClientLedger extends EVMClientLedger {\n /**\n * Constructor for the Avalanche EVM client.\n * @param {Object} config - Configuration object for the client (optional).\n * Defaults to `defaultEthParams` if not provided.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n constructor(config: EVMClientParams & { transport: any }) {\n super(config) // Call the constructor of the parent class with the provided config or the default parameters\n }\n}\n","// Export all elements from the 'client' module\nimport { ClientKeystore } from './ClientKeystore'\n\nexport { ClientKeystore, ClientKeystore as Client } from './ClientKeystore'\nexport { ClientLedger } from './ClientLedger'\n\n// Export all elements from the 'const' module\nexport * from './const'\n\nexport default ClientKeystore\n"],"names":["EVMClientKeystore","EVMClientLedger"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../src/const.ts","../src/ClientKeystore.ts","../src/ClientLedger.ts","../src/index.ts"],"sourcesContent":["// Import necessary modules and classes from external packages and files\nimport { ExplorerProvider, Network } from '@xchainjs/xchain-client'\nimport { EVMClientParams } from '@xchainjs/xchain-evm'\nimport { EtherscanProvider, RoutescanProvider } from '@xchainjs/xchain-evm-providers'\nimport { Asset } from '@xchainjs/xchain-util'\nimport { BigNumber, ethers } from 'ethers'\n\n// Define constants related to Avalanche\nexport const AVAX_DECIMAL = 18\nexport const LOWER_FEE_BOUND = 2_000_000_000\nexport const UPPER_FEE_BOUND = 1_000_000_000_000\nexport const AVAX_GAS_ASSET_DECIMAL = 18\nexport const AVAXChain = 'AVAX' as const\nexport const AssetAVAX: Asset = { chain: AVAXChain, symbol: 'AVAX', ticker: 'AVAX', synth: false }\n\n// Define JSON-RPC providers for mainnet and testnet\nconst AVALANCHE_MAINNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://rpc.ankr.com/avalanche')\nconst AVALANCHE_TESTNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://rpc.ankr.com/avalanche_fuji')\n\n// Define ethers providers for different networks\nconst ethersJSProviders = {\n [Network.Mainnet]: AVALANCHE_MAINNET_ETHERS_PROVIDER,\n [Network.Testnet]: AVALANCHE_TESTNET_ETHERS_PROVIDER,\n [Network.Stagenet]: AVALANCHE_MAINNET_ETHERS_PROVIDER,\n}\n\n// Define online providers (Etherscan) for mainnet and testnet\nconst AVAX_ONLINE_PROVIDER_TESTNET = new EtherscanProvider(\n AVALANCHE_TESTNET_ETHERS_PROVIDER,\n 'https://api-testnet.snowtrace.io',\n process.env.SNOWTRACE_API_KEY || '',\n AVAXChain,\n AssetAVAX,\n 18,\n)\nconst AVAX_ONLINE_PROVIDER_MAINNET = new EtherscanProvider(\n AVALANCHE_MAINNET_ETHERS_PROVIDER,\n 'https://api.snowtrace.io',\n process.env.SNOWTRACE_API_KEY || '',\n AVAXChain,\n AssetAVAX,\n 18,\n)\n\n// Define providers for different networks\nconst avaxProviders = {\n [Network.Mainnet]: AVAX_ONLINE_PROVIDER_MAINNET,\n [Network.Testnet]: AVAX_ONLINE_PROVIDER_TESTNET,\n [Network.Stagenet]: AVAX_ONLINE_PROVIDER_MAINNET,\n}\n\n// Define Routescan providers for mainnet and testnet\nconst ROUTESCAN_PROVIDER_MAINNET = new RoutescanProvider(\n AVALANCHE_MAINNET_ETHERS_PROVIDER,\n 'https://api.routescan.io',\n 43114,\n AssetAVAX,\n AVAX_DECIMAL,\n)\n\nconst ROUTESCAN_PROVIDER_TESTNET = new RoutescanProvider(\n AVALANCHE_TESTNET_ETHERS_PROVIDER,\n 'https://api.routescan.io',\n 43113,\n AssetAVAX,\n AVAX_DECIMAL,\n true,\n)\n\n// Define Routescan providers for different networks\nconst routescanProviders = {\n [Network.Mainnet]: ROUTESCAN_PROVIDER_MAINNET,\n [Network.Testnet]: ROUTESCAN_PROVIDER_TESTNET,\n [Network.Stagenet]: ROUTESCAN_PROVIDER_MAINNET,\n}\n\n// Define explorer providers for mainnet and testnet\nconst AVAX_MAINNET_EXPLORER = new ExplorerProvider(\n 'https://snowtrace.dev/',\n 'https://snowtrace.dev/address/%%ADDRESS%%',\n 'https://snowtrace.dev/tx/%%TX_ID%%',\n)\nconst AVAX_TESTNET_EXPLORER = new ExplorerProvider(\n 'https://testnet.snowtrace.dev/',\n 'https://testnet.snowtrace.dev/address/%%ADDRESS%%',\n 'https://testnet.snowtrace.dev/tx/%%TX_ID%%',\n)\n\n// Define explorer providers for different networks\nconst avaxExplorerProviders = {\n [Network.Mainnet]: AVAX_MAINNET_EXPLORER,\n [Network.Testnet]: AVAX_TESTNET_EXPLORER,\n [Network.Stagenet]: AVAX_MAINNET_EXPLORER,\n}\n\n// Define root derivation paths for different networks\nconst ethRootDerivationPaths = {\n [Network.Mainnet]: `m/44'/60'/0'/0/`,\n [Network.Testnet]: `m/44'/60'/0'/0/`,\n [Network.Stagenet]: `m/44'/60'/0'/0/`,\n}\n\n// Define default parameters for the Avalanche client\nconst defaults = {\n [Network.Mainnet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n [Network.Testnet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n [Network.Stagenet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n}\n\n// Define the default parameters for the Avalanche client\nexport const defaultAvaxParams: EVMClientParams = {\n chain: AVAXChain,\n gasAsset: AssetAVAX,\n gasAssetDecimals: AVAX_GAS_ASSET_DECIMAL,\n defaults,\n providers: ethersJSProviders,\n explorerProviders: avaxExplorerProviders,\n dataProviders: [avaxProviders, routescanProviders],\n network: Network.Mainnet,\n feeBounds: {\n lower: LOWER_FEE_BOUND,\n upper: UPPER_FEE_BOUND,\n },\n rootDerivationPaths: ethRootDerivationPaths,\n}\n","// Import the Client class from '@xchainjs/xchain-evm' module\nimport { Network } from '@xchainjs/xchain-client'\nimport { ClientKeystore as EVMClientKeystore, EVMClientParams, KeystoreSigner } from '@xchainjs/xchain-evm'\n\n// Import defaultAvaxParams constant from './const' file\nimport { defaultAvaxParams } from './const'\n\n// Define and export the Client class as the default exportClientKeystore\nexport class ClientKeystore extends EVMClientKeystore {\n // Constructor function that takes an optional config parameter, defaulting to defaultAvaxParams\n constructor(config: Omit<EVMClientParams, 'signer'> = defaultAvaxParams) {\n super({\n ...config,\n signer: config.phrase\n ? new KeystoreSigner({\n phrase: config.phrase,\n provider: config.providers[config.network || Network.Mainnet],\n derivationPath: config.rootDerivationPaths\n ? config.rootDerivationPaths[config.network || Network.Mainnet]\n : '',\n })\n : undefined,\n })\n }\n}\n","/**\n * Import statements\n * Importing the `Client` class from the '@xchainjs/xchain-evm' module\n * Importing the `defaultEthParams` constant from the './const' file\n */\nimport type Transport from '@ledgerhq/hw-transport'\nimport { Network } from '@xchainjs/xchain-client'\nimport { ClientLedger as EVMClientLedger, EVMClientParams, LedgerSigner } from '@xchainjs/xchain-evm'\n/**\n * Class definition for the Avalanche EVM client.\n * Extends the `XchainEvmClient` class.\n */\nexport class ClientLedger extends EVMClientLedger {\n /**\n * Constructor for the Avalanche EVM client.\n * @param {Object} config - Configuration object for the client (optional).\n * Defaults to `defaultEthParams` if not provided.\n */\n constructor(config: Omit<EVMClientParams, 'signer' | 'phrase'> & { transport: Transport }) {\n // Call the constructor of the parent class with the provided config or the default parameters\n super({\n ...config,\n signer: new LedgerSigner({\n transport: config.transport,\n provider: config.providers[config.network || Network.Mainnet],\n derivationPath: config.rootDerivationPaths ? config.rootDerivationPaths[config.network || Network.Mainnet] : '',\n }),\n })\n }\n}\n","// Export all elements from the 'client' module\nimport { ClientKeystore } from './ClientKeystore'\n\nexport { ClientKeystore, ClientKeystore as Client } from './ClientKeystore'\nexport { ClientLedger } from './ClientLedger'\n\n// Export all elements from the 'const' module\nexport * from './const'\n\nexport default ClientKeystore\n"],"names":["EVMClientKeystore","EVMClientLedger"],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var xchainEvm = require('@xchainjs/xchain-evm');
|
|
6
5
|
var xchainClient = require('@xchainjs/xchain-client');
|
|
6
|
+
var xchainEvm = require('@xchainjs/xchain-evm');
|
|
7
7
|
var xchainEvmProviders = require('@xchainjs/xchain-evm-providers');
|
|
8
8
|
var ethers = require('ethers');
|
|
9
9
|
|
|
@@ -100,15 +100,18 @@ const defaultAvaxParams = {
|
|
|
100
100
|
class ClientKeystore extends xchainEvm.ClientKeystore {
|
|
101
101
|
// Constructor function that takes an optional config parameter, defaulting to defaultAvaxParams
|
|
102
102
|
constructor(config = defaultAvaxParams) {
|
|
103
|
-
super(config)
|
|
103
|
+
super(Object.assign(Object.assign({}, config), { signer: config.phrase
|
|
104
|
+
? new xchainEvm.KeystoreSigner({
|
|
105
|
+
phrase: config.phrase,
|
|
106
|
+
provider: config.providers[config.network || xchainClient.Network.Mainnet],
|
|
107
|
+
derivationPath: config.rootDerivationPaths
|
|
108
|
+
? config.rootDerivationPaths[config.network || xchainClient.Network.Mainnet]
|
|
109
|
+
: '',
|
|
110
|
+
})
|
|
111
|
+
: undefined }));
|
|
104
112
|
}
|
|
105
113
|
}
|
|
106
114
|
|
|
107
|
-
/**
|
|
108
|
-
* Import statements
|
|
109
|
-
* Importing the `Client` class from the '@xchainjs/xchain-evm' module
|
|
110
|
-
* Importing the `defaultEthParams` constant from the './const' file
|
|
111
|
-
*/
|
|
112
115
|
/**
|
|
113
116
|
* Class definition for the Avalanche EVM client.
|
|
114
117
|
* Extends the `XchainEvmClient` class.
|
|
@@ -119,9 +122,13 @@ class ClientLedger extends xchainEvm.ClientLedger {
|
|
|
119
122
|
* @param {Object} config - Configuration object for the client (optional).
|
|
120
123
|
* Defaults to `defaultEthParams` if not provided.
|
|
121
124
|
*/
|
|
122
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
123
125
|
constructor(config) {
|
|
124
|
-
|
|
126
|
+
// Call the constructor of the parent class with the provided config or the default parameters
|
|
127
|
+
super(Object.assign(Object.assign({}, config), { signer: new xchainEvm.LedgerSigner({
|
|
128
|
+
transport: config.transport,
|
|
129
|
+
provider: config.providers[config.network || xchainClient.Network.Mainnet],
|
|
130
|
+
derivationPath: config.rootDerivationPaths ? config.rootDerivationPaths[config.network || xchainClient.Network.Mainnet] : '',
|
|
131
|
+
}) }));
|
|
125
132
|
}
|
|
126
133
|
}
|
|
127
134
|
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/const.ts","../src/ClientKeystore.ts","../src/ClientLedger.ts","../src/index.ts"],"sourcesContent":["// Import necessary modules and classes from external packages and files\nimport { ExplorerProvider, Network } from '@xchainjs/xchain-client'\nimport { EVMClientParams } from '@xchainjs/xchain-evm'\nimport { EtherscanProvider, RoutescanProvider } from '@xchainjs/xchain-evm-providers'\nimport { Asset } from '@xchainjs/xchain-util'\nimport { BigNumber, ethers } from 'ethers'\n\n// Define constants related to Avalanche\nexport const AVAX_DECIMAL = 18\nexport const LOWER_FEE_BOUND = 2_000_000_000\nexport const UPPER_FEE_BOUND = 1_000_000_000_000\nexport const AVAX_GAS_ASSET_DECIMAL = 18\nexport const AVAXChain = 'AVAX' as const\nexport const AssetAVAX: Asset = { chain: AVAXChain, symbol: 'AVAX', ticker: 'AVAX', synth: false }\n\n// Define JSON-RPC providers for mainnet and testnet\nconst AVALANCHE_MAINNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://rpc.ankr.com/avalanche')\nconst AVALANCHE_TESTNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://rpc.ankr.com/avalanche_fuji')\n\n// Define ethers providers for different networks\nconst ethersJSProviders = {\n [Network.Mainnet]: AVALANCHE_MAINNET_ETHERS_PROVIDER,\n [Network.Testnet]: AVALANCHE_TESTNET_ETHERS_PROVIDER,\n [Network.Stagenet]: AVALANCHE_MAINNET_ETHERS_PROVIDER,\n}\n\n// Define online providers (Etherscan) for mainnet and testnet\nconst AVAX_ONLINE_PROVIDER_TESTNET = new EtherscanProvider(\n AVALANCHE_TESTNET_ETHERS_PROVIDER,\n 'https://api-testnet.snowtrace.io',\n process.env.SNOWTRACE_API_KEY || '',\n AVAXChain,\n AssetAVAX,\n 18,\n)\nconst AVAX_ONLINE_PROVIDER_MAINNET = new EtherscanProvider(\n AVALANCHE_MAINNET_ETHERS_PROVIDER,\n 'https://api.snowtrace.io',\n process.env.SNOWTRACE_API_KEY || '',\n AVAXChain,\n AssetAVAX,\n 18,\n)\n\n// Define providers for different networks\nconst avaxProviders = {\n [Network.Mainnet]: AVAX_ONLINE_PROVIDER_MAINNET,\n [Network.Testnet]: AVAX_ONLINE_PROVIDER_TESTNET,\n [Network.Stagenet]: AVAX_ONLINE_PROVIDER_MAINNET,\n}\n\n// Define Routescan providers for mainnet and testnet\nconst ROUTESCAN_PROVIDER_MAINNET = new RoutescanProvider(\n AVALANCHE_MAINNET_ETHERS_PROVIDER,\n 'https://api.routescan.io',\n 43114,\n AssetAVAX,\n AVAX_DECIMAL,\n)\n\nconst ROUTESCAN_PROVIDER_TESTNET = new RoutescanProvider(\n AVALANCHE_TESTNET_ETHERS_PROVIDER,\n 'https://api.routescan.io',\n 43113,\n AssetAVAX,\n AVAX_DECIMAL,\n true,\n)\n\n// Define Routescan providers for different networks\nconst routescanProviders = {\n [Network.Mainnet]: ROUTESCAN_PROVIDER_MAINNET,\n [Network.Testnet]: ROUTESCAN_PROVIDER_TESTNET,\n [Network.Stagenet]: ROUTESCAN_PROVIDER_MAINNET,\n}\n\n// Define explorer providers for mainnet and testnet\nconst AVAX_MAINNET_EXPLORER = new ExplorerProvider(\n 'https://snowtrace.dev/',\n 'https://snowtrace.dev/address/%%ADDRESS%%',\n 'https://snowtrace.dev/tx/%%TX_ID%%',\n)\nconst AVAX_TESTNET_EXPLORER = new ExplorerProvider(\n 'https://testnet.snowtrace.dev/',\n 'https://testnet.snowtrace.dev/address/%%ADDRESS%%',\n 'https://testnet.snowtrace.dev/tx/%%TX_ID%%',\n)\n\n// Define explorer providers for different networks\nconst avaxExplorerProviders = {\n [Network.Mainnet]: AVAX_MAINNET_EXPLORER,\n [Network.Testnet]: AVAX_TESTNET_EXPLORER,\n [Network.Stagenet]: AVAX_MAINNET_EXPLORER,\n}\n\n// Define root derivation paths for different networks\nconst ethRootDerivationPaths = {\n [Network.Mainnet]: `m/44'/60'/0'/0/`,\n [Network.Testnet]: `m/44'/60'/0'/0/`,\n [Network.Stagenet]: `m/44'/60'/0'/0/`,\n}\n\n// Define default parameters for the Avalanche client\nconst defaults = {\n [Network.Mainnet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n [Network.Testnet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n [Network.Stagenet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n}\n\n// Define the default parameters for the Avalanche client\nexport const defaultAvaxParams: EVMClientParams = {\n chain: AVAXChain,\n gasAsset: AssetAVAX,\n gasAssetDecimals: AVAX_GAS_ASSET_DECIMAL,\n defaults,\n providers: ethersJSProviders,\n explorerProviders: avaxExplorerProviders,\n dataProviders: [avaxProviders, routescanProviders],\n network: Network.Mainnet,\n feeBounds: {\n lower: LOWER_FEE_BOUND,\n upper: UPPER_FEE_BOUND,\n },\n rootDerivationPaths: ethRootDerivationPaths,\n}\n","// Import the Client class from '@xchainjs/xchain-evm' module\nimport { ClientKeystore as EVMClientKeystore } from '@xchainjs/xchain-evm'\n\n// Import defaultAvaxParams constant from './const' file\nimport { defaultAvaxParams } from './const'\n\n// Define and export the Client class as the default exportClientKeystore\nexport class ClientKeystore extends EVMClientKeystore {\n // Constructor function that takes an optional config parameter, defaulting to defaultAvaxParams\n constructor(config = defaultAvaxParams) {\n super(config)\n }\n}\n","/**\n * Import statements\n * Importing the `Client` class from the '@xchainjs/xchain-evm' module\n * Importing the `defaultEthParams` constant from the './const' file\n */\nimport { ClientLedger as EVMClientLedger, EVMClientParams } from '@xchainjs/xchain-evm'\n\n/**\n * Class definition for the Avalanche EVM client.\n * Extends the `XchainEvmClient` class.\n */\nexport class ClientLedger extends EVMClientLedger {\n /**\n * Constructor for the Avalanche EVM client.\n * @param {Object} config - Configuration object for the client (optional).\n * Defaults to `defaultEthParams` if not provided.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n constructor(config: EVMClientParams & { transport: any }) {\n super(config) // Call the constructor of the parent class with the provided config or the default parameters\n }\n}\n","// Export all elements from the 'client' module\nimport { ClientKeystore } from './ClientKeystore'\n\nexport { ClientKeystore, ClientKeystore as Client } from './ClientKeystore'\nexport { ClientLedger } from './ClientLedger'\n\n// Export all elements from the 'const' module\nexport * from './const'\n\nexport default ClientKeystore\n"],"names":["ethers","Network","EtherscanProvider","RoutescanProvider","ExplorerProvider","BigNumber","EVMClientKeystore","EVMClientLedger"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/const.ts","../src/ClientKeystore.ts","../src/ClientLedger.ts","../src/index.ts"],"sourcesContent":["// Import necessary modules and classes from external packages and files\nimport { ExplorerProvider, Network } from '@xchainjs/xchain-client'\nimport { EVMClientParams } from '@xchainjs/xchain-evm'\nimport { EtherscanProvider, RoutescanProvider } from '@xchainjs/xchain-evm-providers'\nimport { Asset } from '@xchainjs/xchain-util'\nimport { BigNumber, ethers } from 'ethers'\n\n// Define constants related to Avalanche\nexport const AVAX_DECIMAL = 18\nexport const LOWER_FEE_BOUND = 2_000_000_000\nexport const UPPER_FEE_BOUND = 1_000_000_000_000\nexport const AVAX_GAS_ASSET_DECIMAL = 18\nexport const AVAXChain = 'AVAX' as const\nexport const AssetAVAX: Asset = { chain: AVAXChain, symbol: 'AVAX', ticker: 'AVAX', synth: false }\n\n// Define JSON-RPC providers for mainnet and testnet\nconst AVALANCHE_MAINNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://rpc.ankr.com/avalanche')\nconst AVALANCHE_TESTNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://rpc.ankr.com/avalanche_fuji')\n\n// Define ethers providers for different networks\nconst ethersJSProviders = {\n [Network.Mainnet]: AVALANCHE_MAINNET_ETHERS_PROVIDER,\n [Network.Testnet]: AVALANCHE_TESTNET_ETHERS_PROVIDER,\n [Network.Stagenet]: AVALANCHE_MAINNET_ETHERS_PROVIDER,\n}\n\n// Define online providers (Etherscan) for mainnet and testnet\nconst AVAX_ONLINE_PROVIDER_TESTNET = new EtherscanProvider(\n AVALANCHE_TESTNET_ETHERS_PROVIDER,\n 'https://api-testnet.snowtrace.io',\n process.env.SNOWTRACE_API_KEY || '',\n AVAXChain,\n AssetAVAX,\n 18,\n)\nconst AVAX_ONLINE_PROVIDER_MAINNET = new EtherscanProvider(\n AVALANCHE_MAINNET_ETHERS_PROVIDER,\n 'https://api.snowtrace.io',\n process.env.SNOWTRACE_API_KEY || '',\n AVAXChain,\n AssetAVAX,\n 18,\n)\n\n// Define providers for different networks\nconst avaxProviders = {\n [Network.Mainnet]: AVAX_ONLINE_PROVIDER_MAINNET,\n [Network.Testnet]: AVAX_ONLINE_PROVIDER_TESTNET,\n [Network.Stagenet]: AVAX_ONLINE_PROVIDER_MAINNET,\n}\n\n// Define Routescan providers for mainnet and testnet\nconst ROUTESCAN_PROVIDER_MAINNET = new RoutescanProvider(\n AVALANCHE_MAINNET_ETHERS_PROVIDER,\n 'https://api.routescan.io',\n 43114,\n AssetAVAX,\n AVAX_DECIMAL,\n)\n\nconst ROUTESCAN_PROVIDER_TESTNET = new RoutescanProvider(\n AVALANCHE_TESTNET_ETHERS_PROVIDER,\n 'https://api.routescan.io',\n 43113,\n AssetAVAX,\n AVAX_DECIMAL,\n true,\n)\n\n// Define Routescan providers for different networks\nconst routescanProviders = {\n [Network.Mainnet]: ROUTESCAN_PROVIDER_MAINNET,\n [Network.Testnet]: ROUTESCAN_PROVIDER_TESTNET,\n [Network.Stagenet]: ROUTESCAN_PROVIDER_MAINNET,\n}\n\n// Define explorer providers for mainnet and testnet\nconst AVAX_MAINNET_EXPLORER = new ExplorerProvider(\n 'https://snowtrace.dev/',\n 'https://snowtrace.dev/address/%%ADDRESS%%',\n 'https://snowtrace.dev/tx/%%TX_ID%%',\n)\nconst AVAX_TESTNET_EXPLORER = new ExplorerProvider(\n 'https://testnet.snowtrace.dev/',\n 'https://testnet.snowtrace.dev/address/%%ADDRESS%%',\n 'https://testnet.snowtrace.dev/tx/%%TX_ID%%',\n)\n\n// Define explorer providers for different networks\nconst avaxExplorerProviders = {\n [Network.Mainnet]: AVAX_MAINNET_EXPLORER,\n [Network.Testnet]: AVAX_TESTNET_EXPLORER,\n [Network.Stagenet]: AVAX_MAINNET_EXPLORER,\n}\n\n// Define root derivation paths for different networks\nconst ethRootDerivationPaths = {\n [Network.Mainnet]: `m/44'/60'/0'/0/`,\n [Network.Testnet]: `m/44'/60'/0'/0/`,\n [Network.Stagenet]: `m/44'/60'/0'/0/`,\n}\n\n// Define default parameters for the Avalanche client\nconst defaults = {\n [Network.Mainnet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n [Network.Testnet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n [Network.Stagenet]: {\n approveGasLimit: BigNumber.from(200000),\n transferGasAssetGasLimit: BigNumber.from(23000),\n transferTokenGasLimit: BigNumber.from(100000),\n gasPrice: BigNumber.from(30 * 10 ** 9),\n },\n}\n\n// Define the default parameters for the Avalanche client\nexport const defaultAvaxParams: EVMClientParams = {\n chain: AVAXChain,\n gasAsset: AssetAVAX,\n gasAssetDecimals: AVAX_GAS_ASSET_DECIMAL,\n defaults,\n providers: ethersJSProviders,\n explorerProviders: avaxExplorerProviders,\n dataProviders: [avaxProviders, routescanProviders],\n network: Network.Mainnet,\n feeBounds: {\n lower: LOWER_FEE_BOUND,\n upper: UPPER_FEE_BOUND,\n },\n rootDerivationPaths: ethRootDerivationPaths,\n}\n","// Import the Client class from '@xchainjs/xchain-evm' module\nimport { Network } from '@xchainjs/xchain-client'\nimport { ClientKeystore as EVMClientKeystore, EVMClientParams, KeystoreSigner } from '@xchainjs/xchain-evm'\n\n// Import defaultAvaxParams constant from './const' file\nimport { defaultAvaxParams } from './const'\n\n// Define and export the Client class as the default exportClientKeystore\nexport class ClientKeystore extends EVMClientKeystore {\n // Constructor function that takes an optional config parameter, defaulting to defaultAvaxParams\n constructor(config: Omit<EVMClientParams, 'signer'> = defaultAvaxParams) {\n super({\n ...config,\n signer: config.phrase\n ? new KeystoreSigner({\n phrase: config.phrase,\n provider: config.providers[config.network || Network.Mainnet],\n derivationPath: config.rootDerivationPaths\n ? config.rootDerivationPaths[config.network || Network.Mainnet]\n : '',\n })\n : undefined,\n })\n }\n}\n","/**\n * Import statements\n * Importing the `Client` class from the '@xchainjs/xchain-evm' module\n * Importing the `defaultEthParams` constant from the './const' file\n */\nimport type Transport from '@ledgerhq/hw-transport'\nimport { Network } from '@xchainjs/xchain-client'\nimport { ClientLedger as EVMClientLedger, EVMClientParams, LedgerSigner } from '@xchainjs/xchain-evm'\n/**\n * Class definition for the Avalanche EVM client.\n * Extends the `XchainEvmClient` class.\n */\nexport class ClientLedger extends EVMClientLedger {\n /**\n * Constructor for the Avalanche EVM client.\n * @param {Object} config - Configuration object for the client (optional).\n * Defaults to `defaultEthParams` if not provided.\n */\n constructor(config: Omit<EVMClientParams, 'signer' | 'phrase'> & { transport: Transport }) {\n // Call the constructor of the parent class with the provided config or the default parameters\n super({\n ...config,\n signer: new LedgerSigner({\n transport: config.transport,\n provider: config.providers[config.network || Network.Mainnet],\n derivationPath: config.rootDerivationPaths ? config.rootDerivationPaths[config.network || Network.Mainnet] : '',\n }),\n })\n }\n}\n","// Export all elements from the 'client' module\nimport { ClientKeystore } from './ClientKeystore'\n\nexport { ClientKeystore, ClientKeystore as Client } from './ClientKeystore'\nexport { ClientLedger } from './ClientLedger'\n\n// Export all elements from the 'const' module\nexport * from './const'\n\nexport default ClientKeystore\n"],"names":["ethers","Network","EtherscanProvider","RoutescanProvider","ExplorerProvider","BigNumber","EVMClientKeystore","KeystoreSigner","EVMClientLedger","LedgerSigner"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xchainjs/xchain-avax",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.3",
|
|
4
4
|
"description": "Avax EVM client for XChainJS",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"XChain",
|
|
@@ -26,18 +26,24 @@
|
|
|
26
26
|
"scripts": {
|
|
27
27
|
"clean": "rm -rf .turbo && rm -rf lib",
|
|
28
28
|
"build": "yarn clean && rollup -c",
|
|
29
|
+
"build:release": "yarn exec rm -rf release && yarn pack && yarn exec \"mkdir release && tar zxvf package.tgz --directory release && rm package.tgz\"",
|
|
29
30
|
"test": "jest --passWithNoTests",
|
|
30
31
|
"e2e": "jest --config jest.config.e2e.js",
|
|
31
32
|
"lint": "eslint \"{src,__tests__, __mocks__}/**/*.ts\" --fix --max-warnings 0"
|
|
32
33
|
},
|
|
33
34
|
"publishConfig": {
|
|
34
|
-
"access": "public"
|
|
35
|
+
"access": "public",
|
|
36
|
+
"directory": "release/package"
|
|
35
37
|
},
|
|
36
38
|
"dependencies": {
|
|
37
|
-
"@
|
|
38
|
-
"@xchainjs/xchain-
|
|
39
|
-
"@xchainjs/xchain-evm
|
|
40
|
-
"@xchainjs/xchain-
|
|
39
|
+
"@ledgerhq/hw-transport": "6.30.6",
|
|
40
|
+
"@xchainjs/xchain-client": "0.16.6",
|
|
41
|
+
"@xchainjs/xchain-evm": "0.6.1",
|
|
42
|
+
"@xchainjs/xchain-evm-providers": "0.1.11",
|
|
43
|
+
"@xchainjs/xchain-util": "0.13.6",
|
|
41
44
|
"ethers": "5.7.2"
|
|
45
|
+
},
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@ledgerhq/hw-transport-node-hid": "6.28.6"
|
|
42
48
|
}
|
|
43
49
|
}
|