This commit is contained in:
Matthias Kretschmann 2024-03-30 18:27:18 +00:00
parent 70398b26c4
commit 2498e5e5cb
Signed by: m
GPG Key ID: 606EEEF3C479A91F
7 changed files with 80 additions and 67 deletions

View File

@ -11,6 +11,7 @@
.title { .title {
font-size: clamp(1.3rem, 10vw, 2.5rem); font-size: clamp(1.3rem, 10vw, 2.5rem);
margin-top: 5vh;
} }
.description { .description {
@ -19,8 +20,11 @@
.grid { .grid {
display: grid; display: grid;
gap: 2rem; gap: 1.5rem;
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
}
.breakout {
max-width: calc(var(--max-width) * 1.5); max-width: calc(var(--max-width) * 1.5);
margin: 3rem auto; margin: 3rem auto;
} }

View File

@ -2,6 +2,7 @@ import styles from './page.module.css'
import { metadata } from './layout' import { metadata } from './layout'
import { Swap, Buy } from '@/components/Strategies' import { Swap, Buy } from '@/components/Strategies'
import { Content } from '@/components/Content' import { Content } from '@/components/Content'
import { CalculationBase } from '@/components/CalculationBase'
export default function Home() { export default function Home() {
return ( return (
@ -11,10 +12,14 @@ export default function Home() {
<p className={styles.description}>{`${metadata.description}`}</p> <p className={styles.description}>{`${metadata.description}`}</p>
</header> </header>
<main className={styles.main}> <main className={styles.main}>
<section className={styles.breakout}>
<div className={styles.grid}> <div className={styles.grid}>
<Swap /> <Swap />
<Buy /> <Buy />
</div> </div>
<CalculationBase />
</section>
<Content /> <Content />
</main> </main>
<footer className={styles.footer}> <footer className={styles.footer}>

View File

@ -0,0 +1,27 @@
.label {
font-size: 0.7rem;
color: rgba(var(--foreground-rgb), 0.6);
border: 1px solid rgba(var(--foreground-rgb), 0.2);
border-radius: var(--border-radius);
padding: 0.1rem 0.3rem;
margin-left: 0.2rem;
margin-right: 0.2rem;
vertical-align: middle;
}
.calculationBase {
border-top: 1px solid rgba(var(--foreground-rgb), 0.2);
border-left: 1px solid rgba(var(--foreground-rgb), 0.2);
border-bottom: none;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
border-radius: var(--border-radius);
margin-top: 1.5rem;
}
.calculationBase li {
border-bottom: 1px solid rgba(var(--foreground-rgb), 0.2);
border-right: 1px solid rgba(var(--foreground-rgb), 0.2);
padding: 1rem;
font-size: 0.8rem;
}

View File

@ -0,0 +1,33 @@
'use client'
import { ratioOceanToAsi, ratioAgixToAsi, ratioFetToAsi } from '@/constants'
import styles from './CalculationBase.module.css'
import { usePrices } from '@/hooks'
export function CalculationBase() {
const prices = usePrices()
return (
<ul className={styles.calculationBase}>
<li>
1 ASI
<br />= ${prices.asi}
</li>
<li>
1 OCEAN = {ratioOceanToAsi} ASI
<span className={styles.label}>fixed</span>
<br />= ${prices.ocean}
</li>
<li>
1 AGIX = {ratioAgixToAsi} ASI
<span className={styles.label}>fixed</span>
<br />= ${prices.agix}
</li>
<li>
1 Fet = {ratioFetToAsi} ASI
<span className={styles.label}>fixed</span>
<br />= ${prices.fet}
</li>
</ul>
)
}

View File

@ -0,0 +1 @@
export * from './CalculationBase'

View File

@ -10,33 +10,3 @@
.content a { .content a {
text-decoration: underline; text-decoration: underline;
} }
.label {
font-size: 0.7rem;
color: rgba(var(--foreground-rgb), 0.6);
border: 1px solid rgba(var(--foreground-rgb), 0.2);
border-radius: var(--border-radius);
padding: 0.1rem 0.3rem;
margin-left: 0.2rem;
margin-right: 0.2rem;
vertical-align: middle;
}
.calculationBase {
border: 1px solid rgba(var(--foreground-rgb), 0.2);
border-bottom: none;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
border-radius: var(--border-radius);
margin-top: 2rem;
}
.calculationBase li {
border-bottom: 1px solid rgba(var(--foreground-rgb), 0.2);
padding: 1rem;
font-size: 0.8rem;
}
.calculationBase li:nth-child(odd) {
border-right: 1px solid rgba(var(--foreground-rgb), 0.2);
}

View File

@ -1,12 +1,6 @@
'use client'
import { ratioOceanToAsi, ratioAgixToAsi, ratioFetToAsi } from '@/constants'
import styles from './Content.module.css' import styles from './Content.module.css'
import { usePrices } from '@/hooks'
export function Content() { export function Content() {
const prices = usePrices()
return ( return (
<div className={styles.content}> <div className={styles.content}>
<p> <p>
@ -15,36 +9,15 @@ export function Content() {
fixed ASI exchange rate fixed ASI exchange rate
</a> </a>
, the fiat values fetched from{' '} , the fiat values fetched from{' '}
<a href="https://coingecko.com">Coingecko</a> and the token swap quotes <a href="https://coingecko.com">Coingecko</a> and the quotes from{' '}
from <a href="https://uniswap.org">Uniswap</a> v3 routes are constantly <a href="https://uniswap.org">Uniswap</a> v3 swap routes are constantly
changing. changing.
</p> </p>
<p> <p>
There is no guarantee they reflect the value of your investment once the There is no guarantee displayed values reflect the value of your
actual ASI swap mechanism is released. Use at your own risk. investment once the actual ASI swap mechanism is released. Use at your
own risk.
</p> </p>
<ul className={styles.calculationBase}>
<li>
1 OCEAN = {ratioOceanToAsi} ASI
<span className={styles.label}>fixed</span>
<br />= ${prices.ocean}
</li>
<li>
1 AGIX = {ratioAgixToAsi} ASI
<span className={styles.label}>fixed</span>
<br />= ${prices.agix}
</li>
<li>
1 Fet = {ratioFetToAsi} ASI
<span className={styles.label}>fixed</span>
<br />= ${prices.fet}
</li>
<li>
1 ASI
<br />= ${prices.asi}
</li>
</ul>
</div> </div>
) )
} }