UNPKG

@knine-sdk/react

Version:

React helpers for Knine Finance projects. Part of Knine JS SDK

27 lines (22 loc) 1.15 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib_es6 = require('../node_modules/tslib/tslib.es6.js'); var bignumber = require('@ethersproject/bignumber'); var contracts = require('@knine-sdk/contracts'); var constants = require('@knine-sdk/constants'); var helpers = require('@knine-sdk/helpers'); var useSDK = require('./useSDK.js'); var useWrapperSWR = require('./useWrapperSWR.js'); const useEthPrice = (config) => { const { providerMainnetRpc } = useSDK.useSDK(); const address = constants.getAggregatorAddress(constants.CHAINS.Mainnet); const aggregatorContract = contracts.getAggregatorContract(address, providerMainnetRpc); return useWrapperSWR.useWrapperSWR(['lido-swr:eth-price', aggregatorContract], () => tslib_es6.__awaiter(void 0, void 0, void 0, function* () { const [decimals, latestAnswer] = yield Promise.all([ aggregatorContract.decimals(), aggregatorContract.latestAnswer(), ]); return helpers.divide(latestAnswer, bignumber.BigNumber.from(10).pow(decimals)); }), config); }; exports.useEthPrice = useEthPrice;