prices with quote asset

This commit is contained in:
Kirill Litvinov
2023-07-31 22:49:32 +03:00
parent 58dfb58067
commit e4d523e220
7 changed files with 45 additions and 36 deletions

View File

@@ -13,6 +13,7 @@ import {
governancePoolsSchema,
governancePoolSchema,
governanceChainsInfoSchema,
pricesWithQuoteAssetSchema,
} from './schemas/index.js';
import type redeemOrderSchema from '../Aggregator/schemas/redeemOrderSchema.js';
import { sourceAtomicHistorySchema, targetAtomicHistorySchema } from './schemas/atomicHistorySchema.js';
@@ -81,7 +82,7 @@ class BlockchainService {
this.getUserVotes = this.getUserVotes.bind(this);
this.getUserEarned = this.getUserEarned.bind(this);
this.getHistory = this.getHistory.bind(this);
this.getPrices = this.getPrices.bind(this);
this.getPricesWithQuoteAsset = this.getPricesWithQuoteAsset.bind(this);
this.getTokensFee = this.getTokensFee.bind(this);
this.getGasPriceWei = this.getGasPriceWei.bind(this);
this.checkFreeRedeemAvailable = this.checkFreeRedeemAvailable.bind(this);
@@ -206,9 +207,9 @@ class BlockchainService {
{ headers: this.basicAuthHeaders }
);
getPrices = () => fetchWithValidation(
`${this.apiUrl}/api/prices`,
z.record(z.string()).transform(makePartial),
getPricesWithQuoteAsset = () => fetchWithValidation(
`http://localhost:57303/prices.json`,
pricesWithQuoteAssetSchema,
{ headers: this.basicAuthHeaders }
);

View File

@@ -16,3 +16,4 @@ export { default as governanceContractsSchema } from './governanceContractsSchem
export { default as governancePoolsSchema } from './governancePoolsSchema.js';
export { default as governancePoolSchema } from './governancePoolSchema.js';
export { default as governanceChainsInfoSchema } from './governanceChainsInfoSchema.js';
export { pricesWithQuoteAssetSchema } from './pricesWithQuoteAssetSchema.js';

View File

@@ -0,0 +1,7 @@
import { z } from 'zod';
import { makePartial } from '../../../utils/index.js';
export const pricesWithQuoteAssetSchema = z.object({
quoteAsset: z.string(),
prices: z.record(z.string()).transform(makePartial)
});