-
Notifications
You must be signed in to change notification settings - Fork 96
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' into btc-taproot-example
- Loading branch information
Showing
146 changed files
with
3,247 additions
and
636 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
'@xchainjs/xchain-aggregator': patch | ||
--- | ||
|
||
Add `streamingQuantity` and `streamingInterval` to allow streaming swaps |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
'@xchainjs/xchain-aggregator': patch | ||
--- | ||
|
||
Add arbitrum to chainflip protocol |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
'@xchainjs/xchain-arbitrum': patch | ||
--- | ||
|
||
Lower fee bound updated to 10000000. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
'@xchainjs/xchain-cosmos': patch | ||
--- | ||
|
||
Mintscan as explorer. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
{ | ||
// These tasks will run in order when initializing your CodeSandbox project. | ||
"setupTasks": [ | ||
{ | ||
"name": "Install Dependencies", | ||
"command": "yarn install" | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
{ | ||
"name": "Devcontainer", | ||
"image": "ghcr.io/codesandbox/devcontainers/typescript-node:latest" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# xchainjs-aggregator |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# Aggregator | ||
|
||
Aggregator examples to show different use cases | ||
|
||
## Examples | ||
|
||
### Swaps | ||
|
||
#### Estimate swap | ||
|
||
Check out how you should estimate a swap in this [example](https://github.com/xchainjs/xchainjs-lib/blob/master/examples/aggregator/swap-do.ts) or run it as | ||
|
||
```sh | ||
yarn estimateSwap fromAsset toAsset amount decimals | ||
``` | ||
|
||
#### Do swap | ||
|
||
Check out how you should do a swap between BTC and ETH in this [example](https://github.com/xchainjs/xchainjs-lib/blob/master/examples/aggregator/swap-estimate.ts) or run it as | ||
|
||
|
||
```sh | ||
yarn doSwap phrase amount | ||
``` | ||
|
||
#### Get swap history | ||
|
||
Check out how you should get the swap history of several addresses in this [example](https://github.com/xchainjs/xchainjs-lib/blob/master/examples/aggregator/swap-history.ts) or run it as | ||
|
||
```sh | ||
yarn swapHistory chain1:address1 chain2:address2 | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
{ | ||
"name": "xchainjs-aggregator", | ||
"private": true, | ||
"version": "0.0.1", | ||
"scripts": { | ||
"swapHistory": "npx ts-node swap-history.ts", | ||
"estimateSwap": "npx ts-node swap-estimate.ts", | ||
"doSwap": "npx ts-node swap-do.ts", | ||
"build": "tsc --noEmit" | ||
}, | ||
"description": "Examples using the Aggregator", | ||
"main": "index.js", | ||
"license": "MIT", | ||
"dependencies": { | ||
"@xchainjs/xchain-aggregator": "workspace:*", | ||
"@xchainjs/xchain-bitcoin": "workspace:*", | ||
"@xchainjs/xchain-ethereum": "workspace:*", | ||
"@xchainjs/xchain-util": "workspace:*", | ||
"@xchainjs/xchain-wallet": "workspace:*" | ||
}, | ||
"devDependencies": { | ||
"@types/node": "20.11.28", | ||
"ts-node": "10.9.2", | ||
"typescript": "^5.0.4" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
import { Aggregator } from '@xchainjs/xchain-aggregator' | ||
import { AssetBTC, BTCChain, Client as BTCClient, defaultBTCParams } from '@xchainjs/xchain-bitcoin' | ||
import { AssetETH, Client as ETHClient, ETHChain, defaultEthParams } from '@xchainjs/xchain-ethereum' | ||
import { CryptoAmount, assetAmount, assetToBase } from '@xchainjs/xchain-util' | ||
import { Wallet } from '@xchainjs/xchain-wallet' | ||
|
||
const main = async () => { | ||
const phrase = process.argv[2] || '' | ||
const amount = assetToBase(assetAmount(process.argv[4], Number(process.argv[5] || 8))) | ||
|
||
const wallet = new Wallet({ | ||
BTCChain: new BTCClient({ ...defaultBTCParams, phrase }), | ||
ETHChain: new ETHClient({ ...defaultEthParams, phrase }), | ||
}) | ||
|
||
const aggregator = new Aggregator({ | ||
wallet, | ||
}) | ||
|
||
const txSubmited = await aggregator.doSwap({ | ||
fromAsset: AssetBTC, | ||
destinationAsset: AssetETH, | ||
fromAddress: await wallet.getAddress(BTCChain), | ||
destinationAddress: await wallet.getAddress(ETHChain), | ||
amount: new CryptoAmount(amount, AssetBTC), | ||
}) | ||
|
||
console.log(txSubmited) | ||
} | ||
|
||
main() | ||
.then(() => process.exit(0)) | ||
.catch((err) => console.error(err)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
import { Aggregator } from '@xchainjs/xchain-aggregator' | ||
import { CryptoAmount, assetAmount, assetFromStringEx, assetToBase } from '@xchainjs/xchain-util' | ||
|
||
const main = async () => { | ||
const fromAsset = assetFromStringEx(process.argv[2] || '') | ||
const toAsset = assetFromStringEx(process.argv[3] || '') | ||
const amount = assetToBase(assetAmount(process.argv[4], Number(process.argv[5] || 8))) | ||
|
||
const aggregator = new Aggregator() | ||
|
||
const quote = await aggregator.estimateSwap({ | ||
fromAsset, | ||
destinationAsset: toAsset, | ||
amount: new CryptoAmount(amount, fromAsset), | ||
}) | ||
|
||
console.log({ | ||
canSwap: quote.canSwap, | ||
protocol: quote.protocol, | ||
expectedAmount: quote.expectedAmount.assetAmount.amount().toString(), | ||
memo: quote.memo, | ||
toAddress: quote.toAddress, | ||
}) | ||
} | ||
|
||
main() | ||
.then(() => process.exit(0)) | ||
.catch((err) => console.error(err)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
import { Aggregator } from '@xchainjs/xchain-aggregator' | ||
import { assetToString } from '@xchainjs/xchain-util' | ||
|
||
const main = async () => { | ||
const chainAddress1 = process.argv[2] || '' | ||
const chainAddress2 = process.argv[3] || '' | ||
|
||
const aggregator = new Aggregator() | ||
|
||
const swaps = await aggregator.getSwapHistory({ | ||
chainAddresses: [ | ||
{ | ||
chain: chainAddress1.split(':')[0], | ||
address: chainAddress1.split(':')[1], | ||
}, | ||
{ | ||
chain: chainAddress2.split(':')[0], | ||
address: chainAddress2.split(':')[1], | ||
}, | ||
], | ||
}) | ||
|
||
console.table( | ||
swaps.swaps.map((swap) => { | ||
return { | ||
protocol: swap.protocol, | ||
fromAsset: assetToString(swap.inboundTx.amount.asset), | ||
toAsset: swap.status === 'success' ? assetToString(swap.outboundTx.amount.asset) : undefined, | ||
hash: swap.inboundTx.hash, | ||
fromAmount: swap.inboundTx.amount.assetAmount.amount().toString(), | ||
toAmount: swap.status === 'success' ? swap.outboundTx.amount.assetAmount.amount().toString() : undefined, | ||
} | ||
}), | ||
) | ||
} | ||
|
||
main() | ||
.then(() => process.exit(0)) | ||
.catch((err) => console.error(err)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
{ | ||
"compilerOptions": { | ||
"module": "commonjs", | ||
"target": "es5", | ||
"noEmitOnError": true, | ||
"resolveJsonModule": true, | ||
"esModuleInterop": true, | ||
"lib": [ | ||
"es6", | ||
"dom", | ||
"es2016", | ||
"es2017" | ||
] | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,4 +18,4 @@ | |
"ts-node": "10.9.2", | ||
"typescript": "^5.0.4" | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.