Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 5 additions & 7 deletions projects/figure-markets-democratized-prime/index.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
const { get } = require("../helper/http")
const { sumTokens2 } = require('../helper/unwrapLPs');
const { endPoints: { provenance } } = require('../helper/chain/cosmos.js');
const { queryV1Beta1 } = require('../helper/chain/cosmos.js');

// node test.js projects/figure-markets-democratized-prime/index.js

Expand All @@ -15,14 +14,13 @@ const demoPrimePools = [
"scope1qzh44upjuvzyh25usrsl6w3rv9yqxs9w6n",
]

// Endpoint to retrieve the pool details
const recordsEndpoint = (contractId) =>
`${provenance}/provenance/metadata/v1/scope/${contractId}/record/pool-details`

const getBalances = async () => {
const balances = {}
await Promise.all(demoPrimePools.map(async pool => {
const poolHash = (await get(recordsEndpoint(pool))).records[0]?.record?.outputs[0]?.hash
const poolHash = (await queryV1Beta1({
chain: 'provenance',
url: `metadata/v1/scope/${pool}/record/pool-details`
})).records[0]?.record?.outputs[0]?.hash
if (poolHash) {
const poolInfo = JSON.parse(poolHash)
let asset = poolInfo.leveragePool.asset
Expand Down
20 changes: 11 additions & 9 deletions projects/figure-markets/index.js
Original file line number Diff line number Diff line change
@@ -1,20 +1,22 @@
const { get } = require("../helper/http")
const { sumTokens2 } = require('../helper/unwrapLPs');
const { endPoints: { provenance } } = require('../helper/chain/cosmos.js');
const { queryV1Beta1 } = require('../helper/chain/cosmos.js');

const paginationLimit = 1000;

const figureMarketsExchangeID = '1'

const lockedTokensQuery = (nextKey) =>
`${provenance}/provenance/exchange/v1/market/${figureMarketsExchangeID}/commitments?pagination.limit=${
`exchange/v1/market/${figureMarketsExchangeID}/commitments?pagination.limit=${
paginationLimit
}${
nextKey ? `&pagination.key=${nextKey}` : ""
}`;

const getLockedTokens = async (key, api) => {
const nextTokens = await get(lockedTokensQuery(key));
const nextTokens = await queryV1Beta1({
chain: 'provenance',
url: lockedTokensQuery(key)
})
nextTokens.commitments.map((c) =>
c.amount.map((a) => {
api.add(a.denom, a.amount)
Expand All @@ -38,14 +40,14 @@ const demoPrimePools = [
"scope1qzh44upjuvzyh25usrsl6w3rv9yqxs9w6n",
]

const recordsEndpoint = (contractId) =>
`${provenance}/provenance/metadata/v1/scope/${contractId}/record/pool-details`

const collateralizedAssets = 'pm.sale.pool.3dxq3fk9llvhrqqwhodiap'

const getPoolsCollateralValue = async (api) => {
const collateralTotal = (await Promise.all(demoPrimePools.map(async pool => {
const poolHash = (await get(recordsEndpoint(pool))).records[0]?.record?.outputs[0]?.hash
const poolHash = (await queryV1Beta1({
chain: 'provenance',
url: `metadata/v1/scope/${pool}/record/pool-details`
})).records[0]?.record?.outputs[0]?.hash
if (poolHash) {
const poolInfo = JSON.parse(poolHash)
if (poolInfo.leveragePool.collateralAssets.length > 0 && poolInfo.leveragePool.collateralAssets[0] === collateralizedAssets) {
Expand All @@ -67,4 +69,4 @@ module.exports = {
misrepresentedTokens: true,
methodology: "Figure Markets TVL is the sum of all tokens locked within the Figure Markets protocol contracts.",
provenance: { tvl },
}
}
2 changes: 1 addition & 1 deletion projects/helper/chain/cosmos.js
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ const endPoints = {
babylon: 'https://babylon-api.polkachu.com',
milkyway_rollup: 'https://archival-rest-moo-1.anvil.asia-southeast.initia.xyz',
titan: 'https://titan-lcd.titanlab.io',
provenance: 'https://rest.cosmos.directory/provenance',
provenance: 'https://api.provenance.io',
xion: 'https://api.xion-mainnet-1.burnt.com',
embr: 'https://rest-embrmainnet-1.anvil.asia-southeast.initia.xyz',
civitia: 'https://rest-civitia-1.anvil.asia-southeast.initia.xyz',
Expand Down
Loading