Skip to content

Commit

Permalink
removed redstone-node dependency
Browse files Browse the repository at this point in the history
  • Loading branch information
hatskier committed Feb 18, 2022
1 parent 0bf050c commit 3d18968
Show file tree
Hide file tree
Showing 9 changed files with 79,547 additions and 1,649 deletions.
10 changes: 5 additions & 5 deletions __tests__/get-price.test.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import redstone from "../src/index";
import providers from "redstone-node/dist/src/config/providers.json";
import config from "../src/config";

const MAX_TIME_DIFF = 90000; // 90s

Expand All @@ -17,7 +17,7 @@ describe("Test getPrice method", () => {

expect(price).toBeDefined();
expect(price.symbol).toBe(symbol);
expect(price.provider).toBe(providers["redstone-rapid"].address);
expect(price.provider).toBe(config.providers["redstone-rapid"].address);
expect(price.value).toBeGreaterThan(0.1);
expect(Date.now() - price.timestamp).toBeLessThan(MAX_TIME_DIFF);
});
Expand All @@ -29,7 +29,7 @@ describe("Test getPrice method", () => {
expect(price).toBeDefined();
expect(price.symbol).toBe(symbol);
expect(price.value).toBeGreaterThan(10);
expect(price.provider).toBe(providers["redstone-rapid"].address);
expect(price.provider).toBe(config.providers["redstone-rapid"].address);
expect(Date.now() - price.timestamp).toBeLessThan(MAX_TIME_DIFF);
});

Expand Down Expand Up @@ -58,14 +58,14 @@ describe("Test getPrice method", () => {
test("Should fetch AAPl price without explicit provider setting", async () => {
const price = await redstone.getPrice("AAPL");

expect(price.provider).toBe(providers["redstone-stocks"].address);
expect(price.provider).toBe(config.providers["redstone-stocks"].address);
expect(price.value).toBeGreaterThan(10);
});

test("Should fetch LINK price without explicit provider setting", async () => {
const price = await redstone.getPrice("LINK");

expect(price.provider).toBe(providers["redstone"].address);
expect(price.provider).toBe(config.providers["redstone"].address);
expect(price.value).toBeGreaterThan(1);
});

Expand Down
3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -81,8 +81,7 @@
"axios": "^0.21.1",
"deep-sort-object": "^1.0.2",
"lodash": "^4.17.21",
"pako": "^2.0.3",
"redstone-node": "^0.4.21"
"pako": "^2.0.3"
},
"files": [
"lib/**/*"
Expand Down
5 changes: 2 additions & 3 deletions src/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ import _ from "lodash";
import ArweaveProxy from "./proxies/arweave-proxy";
import CacheProxy from "./proxies/cache-proxy";
import SignatureVerifier from "./signature-verifier";
import config from "./config";
import PriceNotFoundError from "./errors/price-not-found";
import {
PriceData,
Expand All @@ -13,7 +12,7 @@ import {
GetHistoricalPriceOptions,
GetHistoricalPriceForSingleTokenOptions,
} from "./types";
import symbolsConfig from "redstone-node/dist/src/config/tokens.json";
import config from "./config";

const REDSTONE_API_DEFAULTS = {
defaultProvider: "redstone",
Expand Down Expand Up @@ -462,7 +461,7 @@ export default class RedstoneApi {
// Calculating a list of providers which support all symbols in the list
let possibleProviders = Array.from(PROVIDERS_SORTED_BY_PRIORITY);
for (const symbol of symbols) {
const details = (symbolsConfig as any)[symbol];
const details = (config.tokens as any)[symbol];
if (details && details.providers && Array.isArray(details.providers)) {
for (const provider of possibleProviders) {
// If any of symbols doesn't support the provider
Expand Down
6 changes: 0 additions & 6 deletions src/config.ts

This file was deleted.

9 changes: 9 additions & 0 deletions src/config/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import providers from "./providers";
import tokens from "./tokens";

export default {
version: "0.4",
cacheApiUrl: "https://api.redstone.finance/prices",
providers,
tokens,
};
36 changes: 36 additions & 0 deletions src/config/providers.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
export default {
"redstone": {
"address": "I-5rWUehEv-MjdK9gFw09RxfSLQX9DIHxG614Wf8qo0",
"publicKey": "xyTvKiCST8bAT6sxrgkLh8UCX2N1eKvawODuxwq4qOHIdDAZFU_3N2m59rkZ0E7m77GsJuf1I8u0oEJEbxAdT7uD2JTwoYEHauXSxyJYvF0RCcZOhl5P1PJwImd44SJYa_9My7L84D5KXB9SKs8_VThe7ZyOb5HSGLNvMIK6A8IJ4Hr_tg9GYm65CRmtcu18S9mhun8vgw2wi7Gw6oR6mc4vU1I-hrU66Fi7YlXwFieP6YSy01JqoLPhU84EunPQzXPouVSbXjgRU5kFVxtdRy4GK2fzEBFYsQwCQgFrySCrFKHV8AInu9jerfof_DxNKiXkBzlB8nc22CrYnvvio_BWyh-gN0hQHZT0gwMR-A7sbXNCQJfReaIZzX_jP6XoB82PnpzmL_j1mJ2lnv2Rn001flBAx9AYxtGXd9s07pA-FggTbEG3Y2UnlWW6l3EJ93E0IfxL0PqGEUlp217mxUHvmTw9fkGDWa8rT9RPmsTyji-kMFSefclw80cBm_iOsIEutGP4S3LDbP-ZVJWDeJOBQQpSgwbisl8qbjl2sMQLQihoG2TQyNbmLwfyq-XSULkXjUi1_6BH36wnDBLWBKF-bS2bLKcGtn3Vjet72lNHxJJilcj8vpauwJG0078S_lO5uGt6oicdGR6eh_NSn6_8za_tXg0G_fohz4Yb1z8",
"evmAddress": "0x0C39486f770B26F5527BBBf942726537986Cd7eb"
},
"redstone-rapid": {
"address": "zYqPZuALSPa_f5Agvf8g2JHv94cqMn9aBtnH7GFHbuA",
"publicKey": "tfkkt6lHR3lSEBNvjistpdGb8pR9UJoOVO-IuXRXD9PckAqY7TAVuDVhrcQDM56GZ_EUh6Eg_NRYd-EGW8SEQLHXtY_CM4P8563xUpw0XcZJbpOeScFcN5JdN47gq8vllOheO6-v4nRPLVabRVJqkXEqzdEwxQNYDkmPL-gxE0ziZcQRQZdJUzL5mI9DzwpPC86JBVwsBK71iuRlstABciIu8u77qyArkNu0pPig9OFQvT3Vg4OPuWXd83EhqEuN5gqVufyomkmL8X7agiEjDf-UQIfZrSYqgiJsWiVJ2aKHRhLZN17wdX51L21Cg2Sbyb3B1Roy5EgUUTdJ2MY7LnI-CTbBBJLKUHSvN67MDhj1OSBwUULc8bgVCzmfVQryIFmb4tucKvz7TRAWseXNO2MtMlggXa42Hx0sOTopbFTmT_r9glRLYw3QLzyJVH7Ltqr8QldoU-VMWtpo5cmOGh8jwVknSHqWNURbRCoDfAuwh8lpWXBjL_V8haaY0OKFT9Lpi1VW8o4Kfx7ED1VAnLcpVIoV5CkPs_L0Qy_G7XpgA02OAbJH2KvwxZPeSSymdupmr1KMc8iGz5B4a1HEcKggk5ETFfeGz5r0hDha3dwDj-dOv1jbADcdgk7e2xaLgw1CpS1XEHhAnhBJgAzJDJpcHKrxPkD6cUc7FbnsBCE",
"evmAddress": "0xf786a909D559F5Dee2dc6706d8e5A81728a39aE9"
},
"redstone-stocks": {
"address": "Yba8IVc_01bFxutKNJAZ7CmTD5AVi2GcWXf1NajPAsc",
"publicKey": "wOoClMPZ_maAoE6OhCC8svn_9gu8rjuWPi3Grf05zpQnCzeFjzUocJUr0ta-muJDqfiTd4t5KR2qNxn3nkN2_kXsn5AcXnlI4UgnRdcEvsDh6yPMoMlAiAD6c0_CIgdiMFku5OTijNMtFYOybPKrd9Xdf_7_lnRZhU9qQXeBclVjmIzftwNaTFYI1sgApWKMxJ6301CY7VN9SOD9KBrFQJ3QjWqLrLwAyAu_Q6aBeQF_L-cZSFCiTfwyDptiMCdLAjzU9s55LNAg65pZ_OfFsvqylwiXEVIEDLUI3nmcM6OUHfyAG2TxoeXeem9nCpA96MiM8MyTWtOApGA3GW__j3fxutD0wt3_uGnVRZoypPqNuPjb5BraF0owTDYJQNML9Ddx1Hy6gMXjvjxn-MbAV7tI4KnDynrbtXPSZYjRpTpxcH9Rlr-bQAZWGpYF7OWpsZlPuE4MdxpQYhqLj6wfGCxTyzIjyt_t4zR28gWIGT5SfM-etcuXyy_chspsIqisSj781AP7YMTIxzyrY_LAAm-u5gz5VwnD8xDKIrYcsxLpC4V30HFWRc5vYtBQ0cAZYnp9AGGFD-6A7PnqQ1EYSSEHzSAqoYHaqxuAvxJEhG5AECdXBS3-FpgbGgVFEeQxIH7v9Js6-Uk85t23MjRUJFNo2JIlvyolmtkd3mf88qc",
"evmAddress": "0x926E370fD53c23f8B71ad2B3217b227E41A92b12"
},
"redstone-avalanche": {
"address": "f1Ipos2fVPbxPVO65GBygkMyW0tkAhp2hdprRPPBBN8",
"publicKey": "nehHT9-CMWscteR3COOU455AmDI8VihUPG05kDryVl8wjv4iE_7MttV2rz3MTIicL1BNDQ246EnyIL_4qsqu8a_B3dZT8sVdfOtHqh48pDgA0MJ8ifFVUtyabr3D2ZSc2M4re79wm2SQ_S74ZNHV7zBIBS8pUHB20TfrKhrOWi-W0hfkxrqz4jIngXIPmE1ycYbaj9OHSVRFIB-EZN-1LmLZuy2EAAN0nOqJ-aYoblcGOu4WfZDpTXTfj-6-GRRBgeHen3MYnQuDneEYYrtzoCnimWGYrqRnpM654mJTW7gp_NIqLnXn3yG2aS2pbhn1_I0CavtKuE4PSACoP0UwZaGXEtanIaSuMDkeRdu-zhrr8yXZSW1inWdC0lhWPxAhzTYWQ00_OD6oj2FUtbXbAk_F-aPnT1Teb-LcNn6q-HbHSeZ_VV0ge5nn3zvBCc77z-Qfbgyd_a7dNwfy8sVkQc4-gvDJIftzxVXbUWnc3ipvL-PHfLsajg5Jkhteuvf8bIS0cNFS5u9pu3qnutskQxSymPzhkVmSyMWNe48Xp3ok4mUA9SuWTb6AskyoDVR9APh7JNDgeYINctgduqawzJQFxcVDuoW-1b8Gy79EYXW8yHowpAaDm6eYGTPQjnMpttThZwFiC_81JTXHXmDneKm677F2kO-1f6o4UWTBOEk",
"evmAddress": "0x3a7d971De367FE15D164CDD952F64205F2D9f10c"
},
"redstone-dev": {
"address": "33F0QHcb22W7LwWR1iRC8Az1ntZG09XQ03YWuw2ABqA",
"publicKey": "omNGUhh5ar4WnqNxSjDDHBfhK5nMshxyRXUW8uObuxxKELKQjUeEsUdtg5UNuGnUh4AYb5rmGsx_KrLmuqbxl4-OLQrDNnj_LYcP78RLCA7wwonzi5HZVi6vXZ765JKQ-f5SJtFR7hhjj8W8f6PFQ_F2AjtNBkC6basAP4RM3GYIKQGUdVfvAJECZYcjtkZBGZtBxTzSm3SsvcdyVZkiEnvFzg1xLgwsGNuq8dHFciUHaa_ItNzM8GZ_Esjx77qgRLUwKNGvpU8nbao07YxcC7vj-opQQTAWNt1spxLLPqRTRJM_JGDgOEhEN_Tr0qWmjz61LhFW15NJiY1D5sBpOUM29IEpqhMUjj2r2TWp8-gjus_1u3g-KCB6ydfWbjsW9W5oZUfXE8lBKpmQFQ7jOzfev94-uVkxvnK4lY-FeP0fOD6hL_3EPAWLR1oWUqwXPs38A_vvys_ySTgQ11VWEtW-F8s3BRdeHFNZ4XalWAF-BM81HoyC2TwcbLJx3pLJS4FjqbQXcjPCzGE-eUztwKH73luqYXyG-S6sfBWRlqwcwsB9vNp7SnIDs2VLNUmxXG5PpwWG7GlO3HHj-WSchVfFqge0jHlDQeukIIy6fYIqnXaR6cSpiAfqHyzazOnOGgjBUBYDky5LlnrO8bctggYDlAyzJAn997AjeLTlmLM"
},
"redstone-avalanche-prod-1": {
"address": "TEHhCDWy-vGmPSZsYJyM0aP_MM4xESgyIZdf5mVODzg",
"publicKey": "01vc-Uxo9LabpCzQBGLdtlsaoJh9ee5rl-AcOG6dwmXoUDHRUzwexCmIItDOJ7yqus-XMxHeTlks8Re_q7oiKvKAU9KGoYnhoP5hiymeqFMwCIta0Qne92Za9Nm2R2tBW5cUqFHeXJuEutDnU0PUkBF5W7Ut3x3gd0xyVe9j69Sqd-kIQL_E47_ost0-pwHd76z6MZm_u7zmxbnTq0OsZTP4OQrvsnlRLpjyRsNzQomsKjuakM4RcYwfpueLKLwQa4OOJ9uWxsrSmtwdwdHZzQY9F2-l2LOllu5L-dOeDYCw4q9KZ0gmkKM6333pPo8DB-r5qe-gKY4_vNgOLRmBJqCF-G_ifWNptM3fhbkGwokfGw0ELCDqXwZ9Ka2QbqM11xViRhUiVPUJLiYwdhydPv9z0Mu5hPOR13GU-sNCf8Zt6GRyZ3ZMIo40GWrGbowJgTvSxU-mAxXwZ3hs3HRxA8wKkgUwUzTJ9UD6tYhctrG-SLUJfDVdEOGmih3FUbayt6OXN4p_I0WP_8OB8FEMV1Y7Ln-fxhErNonO3HDco4sgRiJvCP-Rcey94fK7fOQXAJ2ZLBh00uEjOWPsf0QjWpDp1qjKFkLAGlMoGDCa_SrTikOZtLAf8QKWap2wye3FeBp5UVwedi2vlF1HJuV8u_C-hoMxI1n0FKoyGJEyLrM",
"evmAddress": "0x981bdA8276ae93F567922497153de7A5683708d3"
},
"redstone-avalanche-prod-2": {
"address": "ll8DlO4xMwHK7gIMsbnOnN7Jg8Sl674Ls4G0aBfHCyk",
"publicKey": "s0H0bHuIK0X-FptNPBvZGBHDbTLj0y-P6PV33sE2xW8WLx0DUtYz7jzlqc1brQ76SiO7ER-B9v80uLkaf5RwRQG-NL3Cm79FOxksz1oA0_wvK5oI-uZRWHDH4uTjhsnc3K2rg6N1X5J0GrSmB-puwiVt-1_fYrCyyzv2rE135bG61IA0i_4_cREr9t84WAYIkSbH003vbuI1KssDJtzqwVidC-DtYuzSnp1oqd4WPBDWSRSM_AswYFCk4A0xROhSmRf--140th5soz7FEJ92QRd3UYGgZ7HpPnedz-xCDgRi1-h12eMzCQM-HtipEJDl2DeTjekcTqPk_2BfnclpeDHO8myd49ikqwlHpkv0rerB3kJgDWYXcP499cZfXetEOrAiVlbPsmkJvpT7u1swaWyG5m78AjBAjZ1RrlSMLXuEHEPb1H31w16oPO6W-cqsZLZXjnxom5GXCbBOZ2Sdo7eIoTt7WMW653yzwZ97tjyMTbM5IqJZLyAFJgq6CFFnwAiKZlrtnCNHWFpfCm4uxsAzAyoW2l0FMZ4lgp7cUCHnl7IEWKSpkfsZy5FLQ0kInfeabZXPs12d5ufnL3upRSlL3pbi0OGrRQyojhOwIkasuVe0MiSSJW1QoD7oK07GWQhSke40vg3GrKW8V57IKSd1pU8owj1k7R9lADYAWLk",
"evmAddress": "0x3BEFDd935b50F172e696A5187DBaCfEf0D208e48"
}
};
Loading

1 comment on commit 3d18968

@vandetta23
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

node scripts/parse-redstone-payload.js

Please sign in to comment.