diff --git a/quotes-service.ts b/quotes-service.ts index 780823b..a16ad43 100644 --- a/quotes-service.ts +++ b/quotes-service.ts @@ -24,7 +24,7 @@ class QuotesService { const quoteResponse = await response.json(); - // Handle price with Big.js, then convert to BN + // Handle price with big.js, then convert to bn.js instance const priceMTMFor1USDC = new Big(quoteResponse['data'][USDC_MINT]['price']).toFixed(6); const priceMTMFor1USDCInBaseUnits = new BN(new Big(priceMTMFor1USDC).times(new Big(10).pow(6)).toString()); diff --git a/src/app/api/flux/route.ts b/src/app/api/flux/route.ts index 4773307..e26e4ab 100644 --- a/src/app/api/flux/route.ts +++ b/src/app/api/flux/route.ts @@ -53,8 +53,8 @@ export async function POST(req: NextRequest): Promise { const scale = new BN(100); const scaledModelCost = new BN(model.cost).mul(scale); - const lowestTokenAmount = scaledModelCost.mul(new BN(lowestAmountOfMTM)).div(scale); - const isPaymentVerified = await verifyPayment(transactionSignature, lowestTokenAmount); + const lowestTokenAmountForModel = scaledModelCost.mul(new BN(lowestAmountOfMTM)).div(scale); + const isPaymentVerified = await verifyPayment(transactionSignature, lowestTokenAmountForModel); if (!isPaymentVerified) { return NextResponse.json( diff --git a/src/app/page.tsx b/src/app/page.tsx index a147ef1..37adc67 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -121,8 +121,8 @@ const Page: React.FC = (): React.ReactElement => {
{FLUX_MODELS.map((model) => { // Convert cost from number to BN - const costBN = new BN(model.cost * 100); - const priceMTM = costBN.mul(priceMTMFor1USDC).div(new BN(100)); + const scaledModelCost = new BN(model.cost * 100); + const priceMTM = scaledModelCost.mul(priceMTMFor1USDC).div(new BN(100)); return ( { +const baseUnitToDecimalFormat = (value: BN, decimals: number): string => { const bigValue = new Big(value.toString()); const factor = new Big(10).pow(decimals); @@ -95,7 +95,7 @@ const AIServiceCard: React.FC = ({

{description}

- Cost: {priceMTM ? formatBNWithDecimals(priceMTM, 6) : '...'} MTM + Cost: {priceMTM ? baseUnitToDecimalFormat(priceMTM, 6) : '...'} MTM
@@ -119,7 +119,7 @@ const AIServiceCard: React.FC = ({ transition-all duration-200 shadow-lg hover:shadow-green-500/25 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:shadow-none" > - {generationState.loading ? 'Processing...' : `Pay ${priceMTM ? formatBNWithDecimals(priceMTM, 6) : '...'} MTM & Generate`} + {generationState.loading ? 'Processing...' : `Pay ${priceMTM ? baseUnitToDecimalFormat(priceMTM, 6) : '...'} MTM & Generate`}