mirror of
https://github.com/cerc-io/mars-interface.git
synced 2024-12-22 04:07:44 +00:00
v1.3.1
### Updates ### New Features - Feat: Dockerfile enhanced to accept environmental arguments on build - Feat: added version number to the footer ### Fixes and Refactoring - Fix: APR endpoint for Apollo vaults - Fix: mobile farm table data
This commit is contained in:
parent
193bb0f2d6
commit
e65eb2ac64
2
.github/workflows/docker-image.yml
vendored
2
.github/workflows/docker-image.yml
vendored
@ -22,4 +22,4 @@ jobs:
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
push: true
|
||||
tags: marsprotocol/interface:latest
|
||||
tags: marsprotocol/interface:latest, marsprotocol/interface:${{ github.run_number }}
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "mars",
|
||||
"homepage": "./",
|
||||
"version": "1.3.0",
|
||||
"version": "1.3.1",
|
||||
"private": false,
|
||||
"license": "SEE LICENSE IN LICENSE FILE",
|
||||
"scripts": {
|
||||
|
@ -1,7 +1,7 @@
|
||||
@import 'src/styles/master';
|
||||
|
||||
.footer {
|
||||
@include padding(8, 0, 24);
|
||||
@include padding(8, 0, 20);
|
||||
background-color: $backgroundFooter;
|
||||
display: grid;
|
||||
place-content: center;
|
||||
@ -88,11 +88,18 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.version {
|
||||
@include padding(0, 0, 4);
|
||||
p {
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (min-width: $bpMediumLow) {
|
||||
.footer {
|
||||
@include padding(8, 0);
|
||||
@include padding(8, 0, 0);
|
||||
left: space(-4);
|
||||
width: calc(100% + (8 * #{$spacingBase}px));
|
||||
|
||||
|
@ -6,6 +6,7 @@ import { useTranslation } from 'react-i18next'
|
||||
import useStore from 'store'
|
||||
import { DocURL } from 'types/enums/docURL'
|
||||
|
||||
import { version } from '../../../../package.json'
|
||||
import styles from './Footer.module.scss'
|
||||
|
||||
export const Footer = () => {
|
||||
@ -209,6 +210,9 @@ export const Footer = () => {
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div className={styles.version}>
|
||||
<p className='faded xs'>Mars Protocol v{version}</p>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
)
|
||||
|
@ -10,6 +10,7 @@ import {
|
||||
import { Loading } from 'components/common'
|
||||
import { VaultLogo, VaultName } from 'components/fields'
|
||||
import { FIELDS_TUTORIAL_KEY } from 'constants/appConstants'
|
||||
import { getLiqBorrowValue, getMaxBorrowValue } from 'functions/fields'
|
||||
import Link from 'next/link'
|
||||
import { Trans, useTranslation } from 'react-i18next'
|
||||
import useStore from 'store'
|
||||
@ -56,6 +57,8 @@ export const ActiveVaultsTableMobile = () => {
|
||||
>
|
||||
<div className={styles.container}>
|
||||
{activeVaults.map((vault, i) => {
|
||||
const maxBorrowValue = getMaxBorrowValue(vault, vault.position)
|
||||
|
||||
const content = (
|
||||
<div key={`${vault.address}-${i}`} className={styles.grid}>
|
||||
<div className={styles.logo}>
|
||||
@ -133,9 +136,9 @@ export const ActiveVaultsTableMobile = () => {
|
||||
<div className={styles.borrowCapacity}>
|
||||
<BorrowCapacity
|
||||
showPercentageText={true}
|
||||
max={10}
|
||||
limit={8}
|
||||
balance={7}
|
||||
max={getLiqBorrowValue(vault, maxBorrowValue)}
|
||||
limit={maxBorrowValue}
|
||||
balance={vault.position.values.borrowed}
|
||||
showTitle={false}
|
||||
barHeight={'16px'}
|
||||
hideValues
|
||||
|
@ -158,15 +158,25 @@ export const vaultsSlice = (set: NamedSet<Store>, get: GetState<Store>): VaultsS
|
||||
const response = await fetch(networkConfig!.apolloAprUrl)
|
||||
|
||||
if (response.ok) {
|
||||
const data: AprResponse[] = await response.json()
|
||||
const data: FlatApr[] | NestedApr[] = await response.json()
|
||||
|
||||
const newAprs = data.map((aprData) => {
|
||||
const aprTotal = aprData.apr.reduce((prev, curr) => Number(curr.value) + prev, 0)
|
||||
const feeTotal = aprData.fees.reduce((prev, curr) => Number(curr.value) + prev, 0)
|
||||
try {
|
||||
const apr = aprData as FlatApr
|
||||
const aprTotal = apr.apr.reduce((prev, curr) => Number(curr.value) + prev, 0)
|
||||
const feeTotal = apr.fees.reduce((prev, curr) => Number(curr.value) + prev, 0)
|
||||
|
||||
const finalApr = aprTotal + feeTotal
|
||||
|
||||
return { contractAddress: aprData.contract_address, apr: finalApr }
|
||||
} catch {
|
||||
const apr = aprData as NestedApr
|
||||
const aprTotal = apr.apr.aprs.reduce((prev, curr) => Number(curr.value) + prev, 0)
|
||||
const feeTotal = apr.apr.fees.reduce((prev, curr) => Number(curr.value) + prev, 0)
|
||||
|
||||
const finalApr = aprTotal + feeTotal
|
||||
return { contractAddress: aprData.contract_address, apr: finalApr }
|
||||
}
|
||||
})
|
||||
|
||||
set({
|
||||
|
10
src/types/interfaces/fields.d.ts
vendored
10
src/types/interfaces/fields.d.ts
vendored
@ -100,12 +100,20 @@ interface AprData {
|
||||
apr: number
|
||||
}
|
||||
|
||||
interface AprResponse {
|
||||
interface FlatApr {
|
||||
contract_address: string
|
||||
apr: { type: string; value: number | string }[]
|
||||
fees: { type: string; value: number | string }[]
|
||||
}
|
||||
|
||||
interface NestedApr {
|
||||
contract_address: string
|
||||
apr: {
|
||||
aprs: { type: string; value: number | string }[]
|
||||
fees: { type: string; value: number | string }[]
|
||||
}
|
||||
}
|
||||
|
||||
interface VaultCapData {
|
||||
address: string
|
||||
vaultCap: {
|
||||
|
Loading…
Reference in New Issue
Block a user