@xchainjs/xchain-arbitrum 0.1.9 → 0.1.10
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/client.d.ts +2 -2
- package/lib/index.esm.js +10 -2
- package/lib/index.esm.js.map +1 -1
- package/lib/index.js +10 -2
- package/lib/index.js.map +1 -1
- package/package.json +6 -6
package/lib/client.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Client as XchainEvmClient } from '@xchainjs/xchain-evm';
|
|
1
|
+
import { Client as XchainEvmClient, EVMClientParams } from '@xchainjs/xchain-evm';
|
|
2
2
|
export declare class Client extends XchainEvmClient {
|
|
3
|
-
constructor(config?:
|
|
3
|
+
constructor(config?: Omit<EVMClientParams, 'signer'>);
|
|
4
4
|
}
|
package/lib/index.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Client as Client$1 } from '@xchainjs/xchain-evm';
|
|
2
1
|
import { Network, ExplorerProvider } from '@xchainjs/xchain-client';
|
|
2
|
+
import { Client as Client$1, KeystoreSigner } from '@xchainjs/xchain-evm';
|
|
3
3
|
import { EtherscanProvider } from '@xchainjs/xchain-evm-providers';
|
|
4
4
|
import { ethers, BigNumber } from 'ethers';
|
|
5
5
|
|
|
@@ -96,7 +96,15 @@ class Client extends Client$1 {
|
|
|
96
96
|
// Constructor function that takes an optional config parameter, defaulting to defaultArbParams
|
|
97
97
|
constructor(config = defaultArbParams) {
|
|
98
98
|
// Call the constructor of the parent class (XchainEvmClient) with the provided config
|
|
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
|
|
package/lib/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../src/const.ts","../src/client.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 } from '@xchainjs/xchain-evm-providers'\nimport { Asset } from '@xchainjs/xchain-util'\nimport { BigNumber, ethers } from 'ethers'\n\n// Define constants related to Arbitrum\nexport const ARB_DECIMAL = 18\nexport const LOWER_FEE_BOUND = 100_000_000\nexport const UPPER_FEE_BOUND = 1_000_000_000\nexport const ARB_GAS_ASSET_DECIMAL = 18\nexport const ARBChain = 'ARB' as const\n// ARB ETH Gas asset\nexport const AssetAETH: Asset = { chain: ARBChain, symbol: 'ETH', ticker: 'ETH', synth: false }\n\n// ARB\nexport const AssetARB: Asset = {\n chain: ARBChain,\n symbol: 'ARB-0x912ce59144191c1204e64559fe8253a0e49e6548',\n ticker: 'ARB',\n synth: false,\n}\n\n// Define JSON-RPC providers for mainnet and testnet\nconst ARBITRUM_MAINNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://arb1.arbitrum.io/rpc')\nconst ARBITRUM_TESTNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://goerli-rollup.arbitrum.io/rpc')\n\n// Define ethers providers for different networks\nconst ethersJSProviders = {\n [Network.Mainnet]: ARBITRUM_MAINNET_ETHERS_PROVIDER,\n [Network.Testnet]: ARBITRUM_TESTNET_ETHERS_PROVIDER,\n [Network.Stagenet]: ARBITRUM_MAINNET_ETHERS_PROVIDER,\n}\n\n// Define online providers (Etherscan) for mainnet and testnet\nconst ARB_ONLINE_PROVIDER_MAINNET = new EtherscanProvider(\n ARBITRUM_MAINNET_ETHERS_PROVIDER,\n 'https://api.arbiscan.io',\n process.env.ARBISCAN_API_KEY || '',\n ARBChain,\n AssetAETH,\n 18,\n)\n\nconst ARB_ONLINE_PROVIDER_TESTNET = new EtherscanProvider(\n ARBITRUM_TESTNET_ETHERS_PROVIDER,\n 'https://api-goerli.arbiscan.io',\n process.env.ARBISCAN_API_KEY || '',\n ARBChain,\n AssetAETH,\n 18,\n)\n\n// Define providers for different networks\nconst arbProviders = {\n [Network.Mainnet]: ARB_ONLINE_PROVIDER_MAINNET,\n [Network.Testnet]: ARB_ONLINE_PROVIDER_TESTNET,\n [Network.Stagenet]: ARB_ONLINE_PROVIDER_MAINNET,\n}\n\n// Define explorer providers for mainnet and testnet\nconst ARB_MAINNET_EXPLORER = new ExplorerProvider(\n 'https://arbiscan.io/',\n 'https://arbiscan.io/address/%%ADDRESS%%',\n 'https://arbiscan.io/tx/%%TX_ID%%',\n)\n\nconst ARB_TESTNET_EXPLORER = new ExplorerProvider(\n 'https://goerli.arbiscan.io',\n 'https://goerli.arbiscan.io/address/%%ADDRESS%%',\n 'https://goerli.arbiscan.io/tx/%%TX_ID%%',\n)\n\n// Define explorer providers for different networks\nconst arbExplorerProviders = {\n [Network.Mainnet]: ARB_MAINNET_EXPLORER,\n [Network.Testnet]: ARB_TESTNET_EXPLORER,\n [Network.Stagenet]: ARB_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 Arbitrum 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(0.2 * 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(0.2 * 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(0.2 * 10 ** 9),\n },\n}\n\n// Define the default parameters for the Arbitrum client\nexport const defaultArbParams: EVMClientParams = {\n chain: ARBChain,\n gasAsset: AssetAETH,\n gasAssetDecimals: ARB_GAS_ASSET_DECIMAL,\n defaults,\n providers: ethersJSProviders,\n explorerProviders: arbExplorerProviders,\n dataProviders: [arbProviders],\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 { Client as XchainEvmClient } from '@xchainjs/xchain-evm'\n\n// Import defaultArbParams constant from './const' file\nimport { defaultArbParams } from './const'\n\n// Create a class called Client that extends the XchainEvmClient class\nexport class Client extends XchainEvmClient {\n // Constructor function that takes an optional config parameter, defaulting to defaultArbParams\n constructor(config = defaultArbParams) {\n // Call the constructor of the parent class (XchainEvmClient) with the provided config\n super(config)\n }\n}\n"],"names":["XchainEvmClient"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../src/const.ts","../src/client.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 } from '@xchainjs/xchain-evm-providers'\nimport { Asset } from '@xchainjs/xchain-util'\nimport { BigNumber, ethers } from 'ethers'\n\n// Define constants related to Arbitrum\nexport const ARB_DECIMAL = 18\nexport const LOWER_FEE_BOUND = 100_000_000\nexport const UPPER_FEE_BOUND = 1_000_000_000\nexport const ARB_GAS_ASSET_DECIMAL = 18\nexport const ARBChain = 'ARB' as const\n// ARB ETH Gas asset\nexport const AssetAETH: Asset = { chain: ARBChain, symbol: 'ETH', ticker: 'ETH', synth: false }\n\n// ARB\nexport const AssetARB: Asset = {\n chain: ARBChain,\n symbol: 'ARB-0x912ce59144191c1204e64559fe8253a0e49e6548',\n ticker: 'ARB',\n synth: false,\n}\n\n// Define JSON-RPC providers for mainnet and testnet\nconst ARBITRUM_MAINNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://arb1.arbitrum.io/rpc')\nconst ARBITRUM_TESTNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://goerli-rollup.arbitrum.io/rpc')\n\n// Define ethers providers for different networks\nconst ethersJSProviders = {\n [Network.Mainnet]: ARBITRUM_MAINNET_ETHERS_PROVIDER,\n [Network.Testnet]: ARBITRUM_TESTNET_ETHERS_PROVIDER,\n [Network.Stagenet]: ARBITRUM_MAINNET_ETHERS_PROVIDER,\n}\n\n// Define online providers (Etherscan) for mainnet and testnet\nconst ARB_ONLINE_PROVIDER_MAINNET = new EtherscanProvider(\n ARBITRUM_MAINNET_ETHERS_PROVIDER,\n 'https://api.arbiscan.io',\n process.env.ARBISCAN_API_KEY || '',\n ARBChain,\n AssetAETH,\n 18,\n)\n\nconst ARB_ONLINE_PROVIDER_TESTNET = new EtherscanProvider(\n ARBITRUM_TESTNET_ETHERS_PROVIDER,\n 'https://api-goerli.arbiscan.io',\n process.env.ARBISCAN_API_KEY || '',\n ARBChain,\n AssetAETH,\n 18,\n)\n\n// Define providers for different networks\nconst arbProviders = {\n [Network.Mainnet]: ARB_ONLINE_PROVIDER_MAINNET,\n [Network.Testnet]: ARB_ONLINE_PROVIDER_TESTNET,\n [Network.Stagenet]: ARB_ONLINE_PROVIDER_MAINNET,\n}\n\n// Define explorer providers for mainnet and testnet\nconst ARB_MAINNET_EXPLORER = new ExplorerProvider(\n 'https://arbiscan.io/',\n 'https://arbiscan.io/address/%%ADDRESS%%',\n 'https://arbiscan.io/tx/%%TX_ID%%',\n)\n\nconst ARB_TESTNET_EXPLORER = new ExplorerProvider(\n 'https://goerli.arbiscan.io',\n 'https://goerli.arbiscan.io/address/%%ADDRESS%%',\n 'https://goerli.arbiscan.io/tx/%%TX_ID%%',\n)\n\n// Define explorer providers for different networks\nconst arbExplorerProviders = {\n [Network.Mainnet]: ARB_MAINNET_EXPLORER,\n [Network.Testnet]: ARB_TESTNET_EXPLORER,\n [Network.Stagenet]: ARB_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 Arbitrum 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(0.2 * 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(0.2 * 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(0.2 * 10 ** 9),\n },\n}\n\n// Define the default parameters for the Arbitrum client\nexport const defaultArbParams: EVMClientParams = {\n chain: ARBChain,\n gasAsset: AssetAETH,\n gasAssetDecimals: ARB_GAS_ASSET_DECIMAL,\n defaults,\n providers: ethersJSProviders,\n explorerProviders: arbExplorerProviders,\n dataProviders: [arbProviders],\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 { Client as XchainEvmClient, EVMClientParams, KeystoreSigner } from '@xchainjs/xchain-evm'\n\n// Import defaultArbParams constant from './const' file\nimport { defaultArbParams } from './const'\n\n// Create a class called Client that extends the XchainEvmClient class\nexport class Client extends XchainEvmClient {\n // Constructor function that takes an optional config parameter, defaulting to defaultArbParams\n constructor(config: Omit<EVMClientParams, 'signer'> = defaultArbParams) {\n // Call the constructor of the parent class (XchainEvmClient) with the provided config\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"],"names":["XchainEvmClient"],"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,7 +100,15 @@ class Client extends xchainEvm.Client {
|
|
|
100
100
|
// Constructor function that takes an optional config parameter, defaulting to defaultArbParams
|
|
101
101
|
constructor(config = defaultArbParams) {
|
|
102
102
|
// Call the constructor of the parent class (XchainEvmClient) with the provided config
|
|
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
|
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/const.ts","../src/client.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 } from '@xchainjs/xchain-evm-providers'\nimport { Asset } from '@xchainjs/xchain-util'\nimport { BigNumber, ethers } from 'ethers'\n\n// Define constants related to Arbitrum\nexport const ARB_DECIMAL = 18\nexport const LOWER_FEE_BOUND = 100_000_000\nexport const UPPER_FEE_BOUND = 1_000_000_000\nexport const ARB_GAS_ASSET_DECIMAL = 18\nexport const ARBChain = 'ARB' as const\n// ARB ETH Gas asset\nexport const AssetAETH: Asset = { chain: ARBChain, symbol: 'ETH', ticker: 'ETH', synth: false }\n\n// ARB\nexport const AssetARB: Asset = {\n chain: ARBChain,\n symbol: 'ARB-0x912ce59144191c1204e64559fe8253a0e49e6548',\n ticker: 'ARB',\n synth: false,\n}\n\n// Define JSON-RPC providers for mainnet and testnet\nconst ARBITRUM_MAINNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://arb1.arbitrum.io/rpc')\nconst ARBITRUM_TESTNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://goerli-rollup.arbitrum.io/rpc')\n\n// Define ethers providers for different networks\nconst ethersJSProviders = {\n [Network.Mainnet]: ARBITRUM_MAINNET_ETHERS_PROVIDER,\n [Network.Testnet]: ARBITRUM_TESTNET_ETHERS_PROVIDER,\n [Network.Stagenet]: ARBITRUM_MAINNET_ETHERS_PROVIDER,\n}\n\n// Define online providers (Etherscan) for mainnet and testnet\nconst ARB_ONLINE_PROVIDER_MAINNET = new EtherscanProvider(\n ARBITRUM_MAINNET_ETHERS_PROVIDER,\n 'https://api.arbiscan.io',\n process.env.ARBISCAN_API_KEY || '',\n ARBChain,\n AssetAETH,\n 18,\n)\n\nconst ARB_ONLINE_PROVIDER_TESTNET = new EtherscanProvider(\n ARBITRUM_TESTNET_ETHERS_PROVIDER,\n 'https://api-goerli.arbiscan.io',\n process.env.ARBISCAN_API_KEY || '',\n ARBChain,\n AssetAETH,\n 18,\n)\n\n// Define providers for different networks\nconst arbProviders = {\n [Network.Mainnet]: ARB_ONLINE_PROVIDER_MAINNET,\n [Network.Testnet]: ARB_ONLINE_PROVIDER_TESTNET,\n [Network.Stagenet]: ARB_ONLINE_PROVIDER_MAINNET,\n}\n\n// Define explorer providers for mainnet and testnet\nconst ARB_MAINNET_EXPLORER = new ExplorerProvider(\n 'https://arbiscan.io/',\n 'https://arbiscan.io/address/%%ADDRESS%%',\n 'https://arbiscan.io/tx/%%TX_ID%%',\n)\n\nconst ARB_TESTNET_EXPLORER = new ExplorerProvider(\n 'https://goerli.arbiscan.io',\n 'https://goerli.arbiscan.io/address/%%ADDRESS%%',\n 'https://goerli.arbiscan.io/tx/%%TX_ID%%',\n)\n\n// Define explorer providers for different networks\nconst arbExplorerProviders = {\n [Network.Mainnet]: ARB_MAINNET_EXPLORER,\n [Network.Testnet]: ARB_TESTNET_EXPLORER,\n [Network.Stagenet]: ARB_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 Arbitrum 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(0.2 * 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(0.2 * 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(0.2 * 10 ** 9),\n },\n}\n\n// Define the default parameters for the Arbitrum client\nexport const defaultArbParams: EVMClientParams = {\n chain: ARBChain,\n gasAsset: AssetAETH,\n gasAssetDecimals: ARB_GAS_ASSET_DECIMAL,\n defaults,\n providers: ethersJSProviders,\n explorerProviders: arbExplorerProviders,\n dataProviders: [arbProviders],\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 { Client as XchainEvmClient } from '@xchainjs/xchain-evm'\n\n// Import defaultArbParams constant from './const' file\nimport { defaultArbParams } from './const'\n\n// Create a class called Client that extends the XchainEvmClient class\nexport class Client extends XchainEvmClient {\n // Constructor function that takes an optional config parameter, defaulting to defaultArbParams\n constructor(config = defaultArbParams) {\n // Call the constructor of the parent class (XchainEvmClient) with the provided config\n super(config)\n }\n}\n"],"names":["ethers","Network","EtherscanProvider","ExplorerProvider","BigNumber","XchainEvmClient"],"mappings":";;;;;;;;;AAAA;AAOA;AACO,MAAM,WAAW,GAAG,GAAE;AACtB,MAAM,eAAe,GAAG,UAAW;AACnC,MAAM,eAAe,GAAG,WAAa;AACrC,MAAM,qBAAqB,GAAG,GAAE;AAChC,MAAM,QAAQ,GAAG,MAAc;AACtC;MACa,SAAS,GAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAE;AAE/F;AACa,MAAA,QAAQ,GAAU;AAC7B,IAAA,KAAK,EAAE,QAAQ;AACf,IAAA,MAAM,EAAE,gDAAgD;AACxD,IAAA,MAAM,EAAE,KAAK;AACb,IAAA,KAAK,EAAE,KAAK;EACb;AAED;AACA,MAAM,gCAAgC,GAAG,IAAIA,aAAM,CAAC,SAAS,CAAC,eAAe,CAAC,8BAA8B,CAAC,CAAA;AAC7G,MAAM,gCAAgC,GAAG,IAAIA,aAAM,CAAC,SAAS,CAAC,eAAe,CAAC,uCAAuC,CAAC,CAAA;AAEtH;AACA,MAAM,iBAAiB,GAAG;AACxB,IAAA,CAACC,oBAAO,CAAC,OAAO,GAAG,gCAAgC;AACnD,IAAA,CAACA,oBAAO,CAAC,OAAO,GAAG,gCAAgC;AACnD,IAAA,CAACA,oBAAO,CAAC,QAAQ,GAAG,gCAAgC;CACrD,CAAA;AAED;AACA,MAAM,2BAA2B,GAAG,IAAIC,oCAAiB,CACvD,gCAAgC,EAChC,yBAAyB,EACzB,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,EAClC,QAAQ,EACR,SAAS,EACT,EAAE,CACH,CAAA;AAED,MAAM,2BAA2B,GAAG,IAAIA,oCAAiB,CACvD,gCAAgC,EAChC,gCAAgC,EAChC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,EAClC,QAAQ,EACR,SAAS,EACT,EAAE,CACH,CAAA;AAED;AACA,MAAM,YAAY,GAAG;AACnB,IAAA,CAACD,oBAAO,CAAC,OAAO,GAAG,2BAA2B;AAC9C,IAAA,CAACA,oBAAO,CAAC,OAAO,GAAG,2BAA2B;AAC9C,IAAA,CAACA,oBAAO,CAAC,QAAQ,GAAG,2BAA2B;CAChD,CAAA;AAED;AACA,MAAM,oBAAoB,GAAG,IAAIE,6BAAgB,CAC/C,sBAAsB,EACtB,yCAAyC,EACzC,kCAAkC,CACnC,CAAA;AAED,MAAM,oBAAoB,GAAG,IAAIA,6BAAgB,CAC/C,4BAA4B,EAC5B,gDAAgD,EAChD,yCAAyC,CAC1C,CAAA;AAED;AACA,MAAM,oBAAoB,GAAG;AAC3B,IAAA,CAACF,oBAAO,CAAC,OAAO,GAAG,oBAAoB;AACvC,IAAA,CAACA,oBAAO,CAAC,OAAO,GAAG,oBAAoB;AACvC,IAAA,CAACA,oBAAO,CAAC,QAAQ,GAAG,oBAAoB;CACzC,CAAA;AAED;AACA,MAAM,sBAAsB,GAAG;AAC7B,IAAA,CAACA,oBAAO,CAAC,OAAO,GAAG,CAAiB,eAAA,CAAA;AACpC,IAAA,CAACA,oBAAO,CAAC,OAAO,GAAG,CAAiB,eAAA,CAAA;AACpC,IAAA,CAACA,oBAAO,CAAC,QAAQ,GAAG,CAAiB,eAAA,CAAA;CACtC,CAAA;AAED;AACA,MAAM,QAAQ,GAAG;AACf,IAAA,CAACA,oBAAO,CAAC,OAAO,GAAG;AACjB,QAAA,eAAe,EAAEG,gBAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AACvC,QAAA,wBAAwB,EAAEA,gBAAS,CAAC,IAAI,CAAC,KAAK,CAAC;AAC/C,QAAA,qBAAqB,EAAEA,gBAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AAC7C,QAAA,QAAQ,EAAEA,gBAAS,CAAC,IAAI,CAAC,GAAG,GAAG,IAAA,CAAA,GAAA,CAAA,EAAE,EAAI,CAAC,CAAA,CAAC;AACxC,KAAA;AACD,IAAA,CAACH,oBAAO,CAAC,OAAO,GAAG;AACjB,QAAA,eAAe,EAAEG,gBAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AACvC,QAAA,wBAAwB,EAAEA,gBAAS,CAAC,IAAI,CAAC,KAAK,CAAC;AAC/C,QAAA,qBAAqB,EAAEA,gBAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AAC7C,QAAA,QAAQ,EAAEA,gBAAS,CAAC,IAAI,CAAC,GAAG,GAAG,IAAA,CAAA,GAAA,CAAA,EAAE,EAAI,CAAC,CAAA,CAAC;AACxC,KAAA;AACD,IAAA,CAACH,oBAAO,CAAC,QAAQ,GAAG;AAClB,QAAA,eAAe,EAAEG,gBAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AACvC,QAAA,wBAAwB,EAAEA,gBAAS,CAAC,IAAI,CAAC,KAAK,CAAC;AAC/C,QAAA,qBAAqB,EAAEA,gBAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AAC7C,QAAA,QAAQ,EAAEA,gBAAS,CAAC,IAAI,CAAC,GAAG,GAAG,IAAA,CAAA,GAAA,CAAA,EAAE,EAAI,CAAC,CAAA,CAAC;AACxC,KAAA;CACF,CAAA;AAED;AACa,MAAA,gBAAgB,GAAoB;AAC/C,IAAA,KAAK,EAAE,QAAQ;AACf,IAAA,QAAQ,EAAE,SAAS;AACnB,IAAA,gBAAgB,EAAE,qBAAqB;IACvC,QAAQ;AACR,IAAA,SAAS,EAAE,iBAAiB;AAC5B,IAAA,iBAAiB,EAAE,oBAAoB;IACvC,aAAa,EAAE,CAAC,YAAY,CAAC;IAC7B,OAAO,EAAEH,oBAAO,CAAC,OAAO;AACxB,IAAA,SAAS,EAAE;AACT,QAAA,KAAK,EAAE,eAAe;AACtB,QAAA,KAAK,EAAE,eAAe;AACvB,KAAA;AACD,IAAA,mBAAmB,EAAE,sBAAsB;;;AC5H7C;
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/const.ts","../src/client.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 } from '@xchainjs/xchain-evm-providers'\nimport { Asset } from '@xchainjs/xchain-util'\nimport { BigNumber, ethers } from 'ethers'\n\n// Define constants related to Arbitrum\nexport const ARB_DECIMAL = 18\nexport const LOWER_FEE_BOUND = 100_000_000\nexport const UPPER_FEE_BOUND = 1_000_000_000\nexport const ARB_GAS_ASSET_DECIMAL = 18\nexport const ARBChain = 'ARB' as const\n// ARB ETH Gas asset\nexport const AssetAETH: Asset = { chain: ARBChain, symbol: 'ETH', ticker: 'ETH', synth: false }\n\n// ARB\nexport const AssetARB: Asset = {\n chain: ARBChain,\n symbol: 'ARB-0x912ce59144191c1204e64559fe8253a0e49e6548',\n ticker: 'ARB',\n synth: false,\n}\n\n// Define JSON-RPC providers for mainnet and testnet\nconst ARBITRUM_MAINNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://arb1.arbitrum.io/rpc')\nconst ARBITRUM_TESTNET_ETHERS_PROVIDER = new ethers.providers.JsonRpcProvider('https://goerli-rollup.arbitrum.io/rpc')\n\n// Define ethers providers for different networks\nconst ethersJSProviders = {\n [Network.Mainnet]: ARBITRUM_MAINNET_ETHERS_PROVIDER,\n [Network.Testnet]: ARBITRUM_TESTNET_ETHERS_PROVIDER,\n [Network.Stagenet]: ARBITRUM_MAINNET_ETHERS_PROVIDER,\n}\n\n// Define online providers (Etherscan) for mainnet and testnet\nconst ARB_ONLINE_PROVIDER_MAINNET = new EtherscanProvider(\n ARBITRUM_MAINNET_ETHERS_PROVIDER,\n 'https://api.arbiscan.io',\n process.env.ARBISCAN_API_KEY || '',\n ARBChain,\n AssetAETH,\n 18,\n)\n\nconst ARB_ONLINE_PROVIDER_TESTNET = new EtherscanProvider(\n ARBITRUM_TESTNET_ETHERS_PROVIDER,\n 'https://api-goerli.arbiscan.io',\n process.env.ARBISCAN_API_KEY || '',\n ARBChain,\n AssetAETH,\n 18,\n)\n\n// Define providers for different networks\nconst arbProviders = {\n [Network.Mainnet]: ARB_ONLINE_PROVIDER_MAINNET,\n [Network.Testnet]: ARB_ONLINE_PROVIDER_TESTNET,\n [Network.Stagenet]: ARB_ONLINE_PROVIDER_MAINNET,\n}\n\n// Define explorer providers for mainnet and testnet\nconst ARB_MAINNET_EXPLORER = new ExplorerProvider(\n 'https://arbiscan.io/',\n 'https://arbiscan.io/address/%%ADDRESS%%',\n 'https://arbiscan.io/tx/%%TX_ID%%',\n)\n\nconst ARB_TESTNET_EXPLORER = new ExplorerProvider(\n 'https://goerli.arbiscan.io',\n 'https://goerli.arbiscan.io/address/%%ADDRESS%%',\n 'https://goerli.arbiscan.io/tx/%%TX_ID%%',\n)\n\n// Define explorer providers for different networks\nconst arbExplorerProviders = {\n [Network.Mainnet]: ARB_MAINNET_EXPLORER,\n [Network.Testnet]: ARB_TESTNET_EXPLORER,\n [Network.Stagenet]: ARB_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 Arbitrum 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(0.2 * 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(0.2 * 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(0.2 * 10 ** 9),\n },\n}\n\n// Define the default parameters for the Arbitrum client\nexport const defaultArbParams: EVMClientParams = {\n chain: ARBChain,\n gasAsset: AssetAETH,\n gasAssetDecimals: ARB_GAS_ASSET_DECIMAL,\n defaults,\n providers: ethersJSProviders,\n explorerProviders: arbExplorerProviders,\n dataProviders: [arbProviders],\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 { Client as XchainEvmClient, EVMClientParams, KeystoreSigner } from '@xchainjs/xchain-evm'\n\n// Import defaultArbParams constant from './const' file\nimport { defaultArbParams } from './const'\n\n// Create a class called Client that extends the XchainEvmClient class\nexport class Client extends XchainEvmClient {\n // Constructor function that takes an optional config parameter, defaulting to defaultArbParams\n constructor(config: Omit<EVMClientParams, 'signer'> = defaultArbParams) {\n // Call the constructor of the parent class (XchainEvmClient) with the provided config\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"],"names":["ethers","Network","EtherscanProvider","ExplorerProvider","BigNumber","XchainEvmClient","KeystoreSigner"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xchainjs/xchain-arbitrum",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "Arbitrum EVM client for XChainJS",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"XChain",
|
|
@@ -34,10 +34,10 @@
|
|
|
34
34
|
"access": "public"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@xchainjs/xchain-client": "
|
|
38
|
-
"@xchainjs/xchain-evm": "
|
|
39
|
-
"@xchainjs/xchain-evm-providers": "
|
|
40
|
-
"@xchainjs/xchain-util": "
|
|
37
|
+
"@xchainjs/xchain-client": "workspace:*",
|
|
38
|
+
"@xchainjs/xchain-evm": "workspace:*",
|
|
39
|
+
"@xchainjs/xchain-evm-providers": "workspace:*",
|
|
40
|
+
"@xchainjs/xchain-util": "workspace:*",
|
|
41
41
|
"ethers": "5.7.2"
|
|
42
42
|
}
|
|
43
|
-
}
|
|
43
|
+
}
|