-
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 add-arbitrum-to-chainflip
- Loading branch information
Showing
24 changed files
with
395 additions
and
24 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-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.outboundTx ? assetToString(swap.outboundTx.amount.asset) : undefined, | ||
hash: swap.inboundTx.hash, | ||
fromAmount: swap.inboundTx.amount.assetAmount.amount().toString(), | ||
toAmount: swap.outboundTx ? 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
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,2 @@ | ||
# xchainjs-thorchain | ||
|
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 @@ | ||
# Thorchain | ||
|
||
Thorchain examples to show different use cases using its client | ||
|
||
## Examples | ||
|
||
### Transactions | ||
|
||
#### Make transaction | ||
|
||
Check out how you should make a Thorchain native asset transaction in this [example](https://github.com/xchainjs/xchainjs-lib/blob/master/examples/thorchain/transaction-transfer.ts) or run it as | ||
|
||
```sh | ||
yarn transfer phrase recipient amount | ||
``` |
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,21 @@ | ||
{ | ||
"name": "xchainjs-thorchain", | ||
"private": true, | ||
"version": "0.0.1", | ||
"scripts": { | ||
"transfer": "npx ts-node transaction-transfer.ts", | ||
"build": "tsc --noEmit" | ||
}, | ||
"description": "Examples using Thorchain client", | ||
"main": "index.js", | ||
"license": "MIT", | ||
"dependencies": { | ||
"@xchainjs/xchain-thorchain": "workspace:*", | ||
"@xchainjs/xchain-util": "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,27 @@ | ||
import { Client, defaultClientConfig } from '@xchainjs/xchain-thorchain' | ||
import { assetAmount, assetToBase } from '@xchainjs/xchain-util' | ||
|
||
const main = async () => { | ||
const phrase = `${process.argv[2]}` | ||
const recipient = `${process.argv[3]}` | ||
const amount = assetAmount(`${process.argv[4]}`, 8) | ||
|
||
const client = new Client({ | ||
...defaultClientConfig, | ||
phrase, | ||
}) | ||
|
||
const hash = await client.transfer({ | ||
recipient, | ||
amount: assetToBase(amount), | ||
}) | ||
|
||
console.log({ | ||
hash, | ||
url: client.getExplorerTxUrl(hash), | ||
}) | ||
} | ||
|
||
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" | ||
] | ||
} | ||
} |
Oops, something went wrong.