From 0f9ba2e2666490a61d9ac0abdddeec26d0067f5b Mon Sep 17 00:00:00 2001 From: AndonMitev Date: Tue, 27 Jul 2021 17:58:31 +0300 Subject: [PATCH 1/2] feat: integrate terra --- src/migrate/data/assets.json | 7 +++++++ src/migrate/data/markets.json | 20 ++++++++++++++++++++ src/utils/clients.js | 28 ++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+) diff --git a/src/migrate/data/assets.json b/src/migrate/data/assets.json index 68f5628ca..c8c5959c5 100644 --- a/src/migrate/data/assets.json +++ b/src/migrate/data/assets.json @@ -19,5 +19,12 @@ "min": 5000000000000000000, "max": 2e+21, "minConf": 1 + }, + { + "code": "ULUNA", + "actualBalance": 0, + "min": 10000, + "max": 2e+21, + "minConf": 1 } ] diff --git a/src/migrate/data/markets.json b/src/migrate/data/markets.json index ea574b3d8..79de6bde5 100644 --- a/src/migrate/data/markets.json +++ b/src/migrate/data/markets.json @@ -58,5 +58,25 @@ "status": "ACTIVE", "max": 2e+21, "min": 5000000000000000000 + }, + { + "from": "ULUNA", + "to": "ETH", + "rate": 0.02, + "spread": 0, + "orderExpiresIn": 7200000, + "status": "ACTIVE", + "max": 2e+21, + "min": 10000 + }, + { + "from": "ETH", + "to": "ULUNA", + "rate": 50, + "spread": 0, + "orderExpiresIn": 7200000, + "status": "ACTIVE", + "max": 2e+21, + "min": 10000 } ] diff --git a/src/utils/clients.js b/src/utils/clients.js index 77bfa5bb8..a8884939f 100644 --- a/src/utils/clients.js +++ b/src/utils/clients.js @@ -35,6 +35,13 @@ const { SolanaWalletProvider } = require('@liquality/solana-wallet-provider') const { SolanaSwapProvider } = require('@liquality/solana-swap-provider') const { SolanaSwapFindProvider } = require('@liquality/solana-swap-find-provider'); +const { TerraNetworks } = require('@liquality/terra-networks') +const { TerraRpcProvider } = require('@liquality/terra-rpc-provider') +const { TerraWalletProvider } = require('@liquality/terra-wallet-provider') +const { TerraSwapProvider } = require('@liquality/terra-swap-provider') +const { TerraSwapFindProvider } = require('@liquality/terra-swap-find-provider'); + + function createBtcClient () { const btcConfig = config.assets.BTC const network = BitcoinNetworks[btcConfig.network] @@ -144,6 +151,26 @@ function createSolClient() { return solanaClient } +function createTerraClient() { + const terraConfig = config.assets.ULUNA + const terraNetwork = TerraNetworks[terraConfig.network] + + const terraClient = new Client() + const derivationPath = '' + terraClient.addProvider(new TerraRpcProvider(terraNetwork)) + terraClient.addProvider(new TerraWalletProvider( + { + network: terraNetwork, + mnemonic: terraConfig.wallet.mnemonic, + derivationPath + } + )) + terraClient.addProvider(new TerraSwapProvider(terraNetwork)) + terraClient.addProvider(new TerraSwapFindProvider(terraNetwork)) + + return terraClient +} + const clients = {} function createClient (asset) { @@ -157,6 +184,7 @@ function createClient (asset) { if (assetData.chain === 'ethereum') return createEthClient(asset) if (assetData.chain === 'near') return createNearClient() if (assetData.chain === 'solana') return createSolClient() + if (assetData.chain === 'terra') return createTerraClient() throw new Error(`Could not create client for asset ${asset}`) } From f4a7a26381502593dc9c694db5d10c1a8da36d1f Mon Sep 17 00:00:00 2001 From: AndonMitev Date: Wed, 25 Aug 2021 11:55:07 +0300 Subject: [PATCH 2/2] feat: Working on terra --- .DS_Store | Bin 0 -> 8196 bytes package-lock.json | 112 +++++++++++++++++++++++++++++------------- package.json | 2 +- src/.DS_Store | Bin 0 -> 6148 bytes src/migrate/.DS_Store | Bin 0 -> 6148 bytes src/worker/.DS_Store | Bin 0 -> 6148 bytes test/.DS_Store | Bin 0 -> 6148 bytes 7 files changed, 80 insertions(+), 34 deletions(-) create mode 100644 .DS_Store create mode 100644 src/.DS_Store create mode 100644 src/migrate/.DS_Store create mode 100644 src/worker/.DS_Store create mode 100644 test/.DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..62d5d59e790dc8a024e59ea96fd6e70bca778c3c GIT binary patch literal 8196 zcmeHMOKTKC5U$=`bh8^pJ!nLPkz92!;3c3iiJQQJintd~dF&$(vzu9x>{XWBBo}{y z2>t+nga?oQ01pb{C5QFk$&-H7-I=Xv)z1mJSWos<3Ig2W3^2Z84Nl z2j63H(7@86p+=pQQ72`0R<=V?dUxn~TAWm1s9PNZ4uLcR+`C^OpV|~sE7re<=;S-~ zZrEye!zQHo!J5PLf9ruOe(Zhp`kShE!~eD1J*4}RtDAu;&;YVpQ3^Hd%qKgQ%F@)D!!m)DHZW$M$a zK8;p!x^(CcqBWaxjfA&F*w~>~Mipd8$=s3pz6iXmzRcA1(d@oGjUw(iFKMpK0+sG^7D{+Z zQDe!oT_Yg~JUH?#(v@dq7C+`+;Vn$NacTsL#=;c${|ouw|4+S- zGvE+#2%KF6RH@de&BH&H<6{B$JB4XWaYW{yK=gU)}p(SLVOH`~hz-D3SmG literal 0 HcmV?d00001 diff --git a/package-lock.json b/package-lock.json index ae1c48be8..98b3f6e92 100644 --- a/package-lock.json +++ b/package-lock.json @@ -848,25 +848,25 @@ } }, "@liquality/solana-rpc-provider": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@liquality/solana-rpc-provider/-/solana-rpc-provider-1.4.5.tgz", - "integrity": "sha512-ewETXJTLC0qugyTMuwsxEU1BEyYO3omCz3Ij0E6c5rAphCv9evncjP6rb3+mWrDj1zwfgNIqhUM7hCM7LFcPDw==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/solana-rpc-provider/-/solana-rpc-provider-1.5.1.tgz", + "integrity": "sha512-oe3Qiy6rX1HP78zjVZMv5l4+9BTmo23d/DOpC/oEHZW1aldOOO9bRW/7XiBxM5xAYReFuLgTUFwL15WWOANDew==", "requires": { "@babel/runtime": "^7.12.1", - "@liquality/errors": "^1.4.5", - "@liquality/node-provider": "^1.4.5", - "@liquality/solana-networks": "^1.4.5", - "@liquality/solana-utils": "^1.4.5", - "@liquality/types": "^1.4.5", - "@liquality/utils": "^1.4.5", + "@liquality/errors": "^1.5.1", + "@liquality/node-provider": "^1.5.1", + "@liquality/solana-networks": "^1.5.1", + "@liquality/solana-utils": "^1.5.1", + "@liquality/types": "^1.5.1", + "@liquality/utils": "^1.5.1", "@solana/web3.js": "^1.18.0", "axios": "^0.21.1" }, "dependencies": { "@liquality/crypto": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@liquality/crypto/-/crypto-1.4.5.tgz", - "integrity": "sha512-do2BU1B1LMVraXqakDB2tg4RqhnEiyNC2AOejhGPtTDAfxayfoQRKM0BV3Pz4t/epHNnLrL/l1lLPpeNtzJJyA==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/crypto/-/crypto-1.5.1.tgz", + "integrity": "sha512-QJg4FMbXgcE+PeqxAU/0tpXaeiTRiMqZJsP7JrVYUBNd7+9TSUdgs4kZo8sqAP31kSXV0y7/IqWUnNKfxMDNoA==", "requires": { "bech32": "^1.1.3", "bs58": "^4.0.1", @@ -874,22 +874,22 @@ } }, "@liquality/errors": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@liquality/errors/-/errors-1.4.5.tgz", - "integrity": "sha512-LjqqhR4trYk8EKDxfS2qonNdg3lVT3uUJv4l0gR62rhrXMEEXeO9CVXLhZxJcF0FRIxeqXpsuoHSU0fSDmxIww==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/errors/-/errors-1.5.1.tgz", + "integrity": "sha512-qBW+V/7/7Z8ExlHGegRTGhbu/7FJjIOh63/9PrKy5ZfYn2LkfK3Cl15fjQleoVqNOWtT6z8zYa2w1anvQj3YDg==", "requires": { "@types/standard-error": "^1.1.0", "standard-error": "^1.1.0" } }, "@liquality/node-provider": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@liquality/node-provider/-/node-provider-1.4.5.tgz", - "integrity": "sha512-2H1jiJc5rVIc397eYZ3dgOIrYCaFqQxGr6b2t0ORFuen/jz5QB2yMTXV21ZsjPSlIGsUrz5avVozQltum2t0ng==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/node-provider/-/node-provider-1.5.1.tgz", + "integrity": "sha512-vKvncJrPfHVC0jdVFqvWem3QlhecALQf5Nby3Pv+3JZxQ+Z2nQUOVRkzFr8gN4eFdkH5aGI+sV0RkeGYHZa6ZQ==", "requires": { "@babel/runtime": "^7.12.1", - "@liquality/errors": "^1.4.5", - "@liquality/provider": "^1.4.5", + "@liquality/errors": "^1.5.1", + "@liquality/provider": "^1.5.1", "@types/axios": "^0.14.0", "@types/lodash": "^4.14.168", "axios": "^0.21.0", @@ -897,30 +897,60 @@ } }, "@liquality/provider": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@liquality/provider/-/provider-1.4.5.tgz", - "integrity": "sha512-G9HIVyK5/XFOsc3oPAujRuDTSx3IMgmIi+Lds9JuZqMmN10oGV4va9DByCG2oqBBcExP2EOlnNt9hqZppMdj0g==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/provider/-/provider-1.5.1.tgz", + "integrity": "sha512-6JWdPNo9ad1t223lnQOfVp5exVHqBQnb85TX1lwmzy5BB8KSoMHjaHJ7W6dcKzDHo/s+S8w/TqoCUbelxVvDpw==", "requires": { - "@liquality/types": "^1.4.5" + "@liquality/types": "^1.5.1" + } + }, + "@liquality/solana-networks": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/solana-networks/-/solana-networks-1.5.1.tgz", + "integrity": "sha512-WsZ+rAj0bjEjbkaQrFJRdTBP9D9INaURVsO057SECX6ilv+tvUVe23w6wKZEDRFDpCYv8rZxwm3cbgM/4lws2Q==", + "requires": { + "@babel/runtime": "^7.12.1", + "@liquality/types": "^1.5.1" + } + }, + "@liquality/solana-utils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/solana-utils/-/solana-utils-1.5.1.tgz", + "integrity": "sha512-NCIwnZNHKT3ErH8PwRqG1krDPmR9AM53YeuDNqZ0d2J8WJbT0FNIqu+2mNfbuVwD5j8a/k54RSfr/zesKnyHmQ==", + "requires": { + "@liquality/crypto": "^1.5.1", + "@liquality/errors": "^1.5.1", + "@liquality/types": "^1.5.1", + "@liquality/utils": "^1.5.1", + "@solana/web3.js": "^1.20.0", + "borsh": "^0.4.0", + "lodash": "^4.17.21" + }, + "dependencies": { + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + } } }, "@liquality/types": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@liquality/types/-/types-1.4.5.tgz", - "integrity": "sha512-4kpO+v06toQHj8dXG7O1joY5k61+ebTQaCMDMw8dUkC/We7dWN6yZoQnt2Uf8p6Gy2G82/owL6GfI0RvUDoooA==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/types/-/types-1.5.1.tgz", + "integrity": "sha512-h2RP4n4MHdZpg2/Dq6Zxl4orqliPiAe15/Be9xPmNId4Y2/r3pnKoz1FP7PMl+ZwA/JwStidHZ6Z52tIWawy6Q==", "requires": { "bignumber.js": "^9.0.1" } }, "@liquality/utils": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@liquality/utils/-/utils-1.4.5.tgz", - "integrity": "sha512-HYytmCBe5ArfL5mPyxWfyMncS/HMSGPEPpG4d3KSGVpmqQa50AqLOUACqGZEH5eASIUSjg+LyYF3rnNUCKUt7Q==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@liquality/utils/-/utils-1.5.1.tgz", + "integrity": "sha512-Sl04SeXFM2dfcR0A8/IYeqVKc/LnwZ3OXSsAWNoFcIZC9NEK7ukZNtkpSCS50NpDi78dFgHJJpp/pBZiWT1AiQ==", "requires": { "@babel/runtime": "^7.12.1", - "@liquality/crypto": "^1.4.5", - "@liquality/errors": "^1.4.5", - "@liquality/types": "^1.4.5", + "@liquality/crypto": "^1.5.1", + "@liquality/errors": "^1.5.1", + "@liquality/types": "^1.5.1", "setimmediate": "^1.0.5" } }, @@ -931,6 +961,22 @@ "requires": { "follow-redirects": "^1.10.0" } + }, + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" + }, + "borsh": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.4.0.tgz", + "integrity": "sha512-aX6qtLya3K0AkT66CmYWCCDr77qsE9arV05OmdFpmat9qu8Pg9J5tBUPDztAW5fNh/d/MyVG/OYziP52Ndzx1g==", + "requires": { + "@types/bn.js": "^4.11.5", + "bn.js": "^5.0.0", + "bs58": "^4.0.0", + "text-encoding-utf-8": "^1.0.2" + } } } }, diff --git a/package.json b/package.json index fe6809201..1b5e0809e 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,7 @@ "@liquality/near-swap-find-provider": "1.1.8", "@liquality/near-swap-provider": "1.1.8", "@liquality/solana-networks": "^1.4.5", - "@liquality/solana-rpc-provider": "^1.4.5", + "@liquality/solana-rpc-provider": "^1.5.1", "@liquality/solana-swap-find-provider": "^1.4.5", "@liquality/solana-swap-provider": "^1.4.5", "@liquality/solana-wallet-provider": "^1.4.5", diff --git a/src/.DS_Store b/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..ffe62c8fb0d62eb66ee7c74dab9969b7402d3fbb GIT binary patch literal 6148 zcmeHKze@u#6n@cai#l`?2Zxi6ir^@SoKhDjp^I+)X)U%~(G~}n`x6{p1pfqG#m!A9 z{sI043ZjeP;NbU?*d}*9brO-hl6<+m_mc0v++7+X66@XS5>b|jGAN9x2~XO0>ojV7r@4XWbTq#7Mz_5n(dVy)MQW zCX1vPo5u_D_^DyfX3I<}bhT5!Dc}_7E5P3e4~5a!7%G&X4pj0808F7<8roTI06mSq z#!w+VFriX`DplwshEVC~_jH`EF;uA1N$A6e&@&5tLJ@LyjPJ>C623xLI|ZBqwgRK- zGRyn_M)LXJPI6aH0jI#fQb45gh5R~hN$;((o8!IKLn)%Laa^cSrl8W>v25^GJcA+) ZK93tfUt_2cJuvr2K+51Mr@*f&@B!Ug?g#(? literal 0 HcmV?d00001 diff --git a/src/migrate/.DS_Store b/src/migrate/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..cb7c6ee41b698aca88cb5bcbe14bdd818db34d78 GIT binary patch literal 6148 zcmeHKJ5Iwu5S;-_SfWXVD7UA|4K|TEL24voEIv{qr-0ram!ZfV5SQT&NWA$Fd1a-g zfEj7_d1vN%?N@j_M8wONZca2Kq8ctpud+-{^5PRa@kj+^xyR;VzPjtTyGiBofN(47 zXid+wF8OC~2L^K-A0%M~B zjmkb^u+b4uUY8vQL!%Sx$+(Z7%s!#8o{o6Za^h?lYbX#3lnR{Mb|(G*8h&K{FG;Zr z1ww&8r2tpWs#)TdythtXPI_&E-@<jw-Aj=np`s1VXJ+sbbH@%0G4EH~0~r?E@u>%E$oE zlJDhgzg+T$I2I9IzHAzig^1K}LwU7jZk9Kn*;$EHK(%{pADi_0KaHR54OAKxpaN8Y3Q&Q6sQ`MmS$z@6 zl?qS+D)6mujh$k->&4FC002P=ja30%*_5U0AiTQs@;*JVXfj^~yR_(f7 z;+0BooxPm(+62FYe;I1M9E-PNptoXdtQB95>XKa}p9>CwPDkA7K>i4rE;K6e8wz{^ DX`(2% literal 0 HcmV?d00001 diff --git a/test/.DS_Store b/test/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5ef7bcee0e494989fcd7f5be45c5877f06b0c44a GIT binary patch literal 6148 zcmeHK!AiqG5S^(-A{On@ix9-C(A+(wC4NCK9t5SWsF<42)_d@0{1AW3gKu`0m^H1% zi-^pW-M2eCvw8cLWV=Mfqvu&d)F+|{MXuvG#BFiRuF+p7PlANCRF5iaRb7nuz zDes%S210L_W>jD;k6^wCc^|)i9dGiy8rD36Ip)PDuT3!_k4kt%PR$Z;!odBKfD8BD z*TppXoMbhh)?7_a-^B&I*y$tO%uE4Oz!VS#aAu1|`-)bZ0;Yf|P%9wchZsdL^;jvo zPX{V@1ps#8c80dxB_t>In0l-fF#=;v1!^k$D+X&i{IQQqJywdEPV6rq?4Qj3hQjXY zm_K&m#Hpgyrhq9BDzKy7zMTIToA3W&lJ!ghQ{Z1Iz};+|jj$wtwzd{0XKjpfgCZtz nm13QOhC7N8D@XAWiZl3QX#i7?l_ESa`y=3Fu*wwpRRul(%&%;+ literal 0 HcmV?d00001